【Maven - nonFilteredFileExtensions】打包问题记录

问题描述:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.3.0:resources (default-resources) on project xx-service: filtering .../src/main/resources/download/meter.xlsx to .../target/classes/download/meter.xlsx failed with MalformedInputException: Input length = 2 -> [Help 1]

解决方案

在pom.xml 加上这一段。。。

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<nonFilteredFileExtensions>xlsx</nonFilteredFileExtensions>
</configuration>
</plugin>

关于 nonFilteredFileExtensions 的说明

nonFilteredFileExtensions 是 Apache Maven 的一个 POM 构建选项,用于通过指定一组文件后缀名,告诉 Maven 在执行资源过滤时不需要对这些文件进行处理。

在项目中,Maven 会将资源文件(如文本文件、配置文件、XML 文件等)拷贝到目标目录,并在拷贝时对其中的变量进行替换,例如将代码中某个环境变量的值替换为具体的值。这个过程叫做资源过滤。

有些文件,例如图片、音频和视频等二进制文件,它们没有需要替换的内容,因此不需要进行资源过滤,这时候就可以使用 nonFilteredFileExtensions 配置来告诉 Maven 不需要对这些文件进行处理,以加快构建速度。

下面是一个示例配置:

<project>
...
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>jpg</nonFilteredFileExtension>
<nonFilteredFileExtension>gif</nonFilteredFileExtension>
<nonFilteredFileExtension>png</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</resource>
</resources>
</build>
...
上述配置表示:在 src/main/resources 目录下的资源文件中,除了 .jpg、.gif 和 .png 文件外,其它所有文件都需要进行资源过滤。
posted @   aaacarrot  阅读(2266)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示