我正在使用maven资源插件从我的项目中复制一些资源,但是我的一个资源是二进制文件。输出说它是Using 'UTF-8' encoding to copy filtered resources
,这是我的问题!!!
这是我的插件配置。
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>copy-resources</id>
<!-- here the phase you need -->
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/autopublisher</outputDirectory>
<resources>
<resource>
<directory>src/autopublisher</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
我可以跳过二进制文件的UTF-8转换吗?
谢谢你。
4条答案
按热度按时间elcex8rz1#
为了解决我的问题,我把这个添加到我的配置maven binary filtering:
dtcbnfnu2#
设置两个单独的
<resource>
元素,一个使用<filtering>false</filtering>
,另一个使用<filtering>true</filtering>
。使用<resource>
的<includes>
和<excludes>
元素,通过扩展名从其中一个元素中排除二进制文件。然而资源插件在默认情况下会越来越聪明地排除图像,所以请确保您使用的是最新版本。
xpszyzbs3#
我遇到过类似的情况,一个二进制文件(以及混合的txt和二进制数据)是无意中处理的插件,使其无法使用的结束。
为了解决这个问题,我只需要让过滤更明确地显示要过滤的文件类型,并保持所有其他文件不变,见下文:
vfhzx4xs4#
对于没有扩展名的编译二进制文件(它在RHEL构建服务器上启动以进行一些组件测试),添加一个Linux版本的文件扩展名,并使用code-gijoe上面的答案来确保maven不会“过滤”它: