我正在使用yuiccompressor maven插件缩小和聚合我的css文件,该插件在我的资源目录的基础上创建一个单独的css文件。这些原始的css文件被嵌套在一些文件夹中,这些文件夹在同一级别上也有一个"images"文件夹。
我想复制这些嵌套图像文件夹中的所有图像到我的资源目录底部的一个"图像"文件夹中,以便聚合的css仍然可以引用这些图像。
下面是我的插件配置:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-images-for-css</id>
<!-- here the phase you need -->
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>target/${project.artifactId}-${project.version}/plugin/resources/${plugin.client.version}/images</outputDirectory>
<resources>
<resource>
<directory>target/${project.artifactId}-${project.version}/plugin/resources/${plugin.client.version}</directory>
<includes>
<include>**/images/*.*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
为了测试这一点,我在嵌套的图像文件中放置了一个.js文件,旁边是我希望复制的。gif和。jpg文件。然而,只有.js文件被移动到正确的位置;
给了什么?
更新1:目录结构的更直观的描述:
resources
|--1.1.0
|--all.min.css
|--images //a newly created folder
|--sample1.gif //the copied file
|--sample2.gif //the copied file
|--category
|--category.css
|--images
|--sample1.gif
|--otherCategory
|--otherCategory.css
|--images
|--sample2.gif
更新2:我只是试着用copy-maven-plugin执行复制,并有相同的结果,js文件被复制,但不是图像文件。不确定这些插件是否共享功能,但如果没有,这让我认为有一些与插件无关的事情正在发生。我能够使用windows命令提示符成功地复制文件。
尝试将<include>**/images/*.*</include>
替换为<include>**/images/*</include>
。但奇怪的是为什么它对你的变体不起作用。此外,对于您的情况,最好使用汇编插件
我不确定将资源复制到目标目录的时间,但似乎图像只是没有及时复制。我意识到没有真正的理由需要从目标目录而不是源目录进行复制。我更新了目录,如下所示,图像被成功复制过来了。
:
<directory>target/${project.artifactId}-${project.version}/plugin/resources/${plugin.client.version}</directory>
:后<directory>src/main/webapp/plugin/resources/${plugin.client.version}</directory>