簡體   English   中英

如何將SASS插件目標綁定到tomcat7部署階段(Maven)

[英]How to bind SASS plugin goal to tomcat7 deploy phase (maven)

我正在開發一個在Tomcat7上運行的webapp,並使用maven進行依賴項/自動構建。 昨天我開始使用sass-maven-plugin ,這很棒。 其目標sass:update-stylesheets處理sass文件並輸出css。 不幸的是,我無法在webapp打包期間執行它。 我也是Maven的新手,所以我可能錯過了一些東西。 這是我的理解:

  • 當我鍵入mvn tomcat7:deploy ,maven執行在tomcat7插件中定義的deploy目標
  • 該插件經歷了開發生命周期的某些階段。 更具體地說,如doc中所述,它“在執行自身之前先調用生命周期階段程序包”。
  • 如果我將目標sass:update-stylesheets映射到<build><executions/></build>的包階段,則應在每次部署/重新部署應用程序時執行。

當我獨立於tomcat7:deploy運行mvn sass:update-stylesheets ,一切都很順利。 sass-maven-plugin從src / main / resources獲取.scss文件,對其進行處理並將輸出放置在src / main / webapp / resources中,我希望將其與我的webapp一起部署。 不幸的是,如果我在tomcat7:deploy之前沒有運行命令,則我的頁面沒有任何CSS。 我怎么了? 此外,例如,有什么方法可以將sass:update-stylesheets映射到階段process-resources ,這更有意義嗎? 最后,如果這一切都可行,那么Eclipse的增量構建是否可以使用它?

這是我的pom.xml(相關部分)

    ...

    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    ...
                </configuration>
            </plugin>

            <!-- SASS processing -->
            <plugin>
                <groupId>org.jasig.maven</groupId>
                <artifactId>sass-maven-plugin</artifactId>
                <version>1.1.1</version>
                <executions>
                    <execution>
                        <id>generate-css</id>
                        <phase>package</phase>
                        <goals>
                            <goal>update-stylesheets</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <useCompass>true</useCompass>
                    <resources>
                        <resource>
                            <source>
                                <directory>${basedir}/src/main/resources</directory>
                            </source>
                            <destination>${basedir}/src/main/webapp/resources</destination>
                        </resource>
                    </resources>
                </configuration>
            </plugin>


        </plugins>
    </pluginManagement>
</build>

在此先感謝您的幫助。

您已經在“插件管理”部分中配置了相關內容。 請移動執行並將其綁定到build部分(即,從pluginManagement的plugins部分移至build的plugins部分)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM