我们正在使用 maven Assembly and Dependency 插件跨子模块共享资源,如本文所述,http://www.sonatype.com/people/2008/04/how-to-share-resources-across-projects-在行家/
虽然像属性文件这样的文本文件被正确解包,但二进制模式的文件(例如 pdf 文件)在依赖插件解包时被损坏。
我们通过验证程序集插件创建的存档(zip)将问题缩小到依赖插件(解包阶段)
对此的任何帮助都会有很大帮助
我们正在使用 maven Assembly and Dependency 插件跨子模块共享资源,如本文所述,http://www.sonatype.com/people/2008/04/how-to-share-resources-across-projects-在行家/
虽然像属性文件这样的文本文件被正确解包,但二进制模式的文件(例如 pdf 文件)在依赖插件解包时被损坏。
我们通过验证程序集插件创建的存档(zip)将问题缩小到依赖插件(解包阶段)
对此的任何帮助都会有很大帮助
在您的 assembly.xml 中为二进制文件使用 lineEnding 或 fileMode 会导致它们被损坏 - 如果您在文本资源上应用这些中的任何一个,请确保为二进制资源使用单独的 fileSet。
对于那些会遇到类似问题的人,我在这个答案中找到了解决方案:https ://stackoverflow.com/a/24282250/2211974
只需验证 maven 是否没有过滤您的二进制文件,如果将配置添加到maven-resource-plugin
:
<configuration>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>bin</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>