我正在使用Maven 3.3和Java 6.我正在寻找一个可以缩小CSS和JS文件但不将它们打包成单个文件的插件,而是将每个文件压缩并使用相同的文件将其放入Web应用程序中文件名和目录结构。所以如果我有这个文件
src/main/webapp/css/my.css
生成的缩小文件将进入
target/myproject/css/my.css
我正在尝试使用Maven minifier插件使用下面的配置执行此操作,但我的Javascript文件被打包成称为“script.js”的东西,CSS文件同样被打包成一个巨大的CSS文件。有没有办法缩小每个文件而不将它们全部压缩成一个文件?
<profile>
<id>minififiles</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>com.samaxes.maven</groupId>
<artifactId>minify-maven-plugin</artifactId>
<version>1.7.4</version>
<executions>
<execution>
<id>default-minify</id>
<phase>process-resources</phase>
<configuration>
<cssSourceIncludes>
<cssSourceInclude>**/*.css</cssSourceInclude>
</cssSourceIncludes>
<jsSourceIncludes>
<jsSourceInclude>**/*.js</jsSourceInclude>
</jsSourceIncludes>
<jsEngine>CLOSURE</jsEngine>
<webappTargetDir>${project.build.outputDirectory}</webappTargetDir>
</configuration>
<goals>
<goal>minify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
答案 0 :(得分:0)
您可以在配置中添加以下选项:
<skipMerge>true</skipMerge>
<nosuffix>true</nosuffix>
但请注意,如果您使用的是默认目标目标(由于您覆盖选项webappTargetDir
,则不是这样),并且您同时设置选项nosuffix
和skipMerge
设置为true
,插件执行阶段需要设置为package
,否则输出文件将在打包过程中被源文件覆盖。
您使用的插件版本需要Java 7,不适用于Java 6.