我正在尝试缩小所有css和js文件。然后我想把它们放在最终的战争文件中。我不想更改文件名,即我只希望内容应该缩小每个文件,并且应该转到war文件。
这是我的 pom.xml
<plugin>
<groupId>com.samaxes.maven</groupId>
<artifactId>minify-maven-plugin</artifactId>
<version>1.7.2</version>
<executions>
<execution>
<id>minify</id>
<phase>package</phase>
<goals>
<goal>minify</goal>
</goals>
<configuration>
<charset>utf-8</charset>
<jsEngine>CLOSURE</jsEngine>
<closureCompilationLevel>WHITESPACE_ONLY</closureCompilationLevel>
<nosuffix>true</nosuffix>
<skipMerge>true</skipMerge>
<verbose>true</verbose>
<cssSourceDir>/ui/css</cssSourceDir>
<cssTargetDir>/ui/css</cssTargetDir>
<cssSourceIncludes>
<cssSourceInclude>*.css</cssSourceInclude>
</cssSourceIncludes>
<jsSourceDir>/ui/js</jsSourceDir>
<jsTargetDir>/ui/js</jsTargetDir>
<jsSourceIncludes>
<jsSourceInclude>*.js</jsSourceInclude>
</jsSourceIncludes>
</configuration>
</execution>
</executions>
</plugin>
这里首先发生战争文件的打包,然后发生缩小。
运行pom文件
后,在命令行中输出[INFO] --- maven-war-plugin:2.2:war (default-war) @ ProductActivationServer ---
[INFO] Packaging webapp
[INFO] Assembling webapp [ProductActivationServer] in [C:\ProductActivationServerUI\pas\ProductActivationServer\target\pas]
[INFO] Processing war project
[INFO] Copying webapp resources [C:\ProductActivationServerUI\pas\ProductActivationServer\src\main\webapp]
[INFO] Webapp assembled in [13993 msecs]
[INFO] Building war: C:\ProductActivationServerUI\pas\ProductActivationServer\target\pas.war
[INFO] WEB-INF\web.xml already added, skipping
[INFO]
[INFO] --- minify-maven-plugin:1.7.2:minify (minify) @ ProductActivationServer ---
[INFO] Starting CSS task:
[INFO] Skipping the merge step...
[INFO] Creating the minified file [C:\ProductActivationServerUI\pas\ProductActivationServer\target\pas\ui\css\BreadCrumb.css].
所以在最后的战争中原始内容在那里,但没有缩小。
请帮忙。我正在使用mvn,struts web app。
我正在尝试缩小所有css和js文件。然后我想把它们放在最终的战争文件中。我不想更改文件名,即我只希望内容应该缩小每个文件,并且应该转到war文件。
答案 0 :(得分:0)
当选项nosuffix
和skipMerge
都设置为true
时,插件执行阶段需要设置为package
,否则输出文件将被覆盖包装过程中的源文件。
您还需要exclude source files from WAR package。