在自定义Maven插件中,我使用addResource
中的MavenProject
将文件添加为资源。
这对于JAR项目效果很好,但是对于EARs,我看到相关文件已复制到target/classes
,然后被忽略。它不在EAR中。
有一个earSourceDirectory属性,我可以通过将其设置为target/classes
来“欺骗” Maven,但这似乎是错误的方法。
如何处理应打包到EAR中的生成资源?
答案 0 :(得分:0)
Maven EAR插件完全忽略了可以为给定工件设置的所有“资源”目录。相反,如上所述,它仅依赖于earSourceDirectory
属性引用的目录,src/main/application
是默认值。 (请参阅https://maven.apache.org/plugins/maven-ear-plugin/ear-mojo.html#earSourceDirectory)
因此,您有两种选择:按照您的建议将属性值更改为指向target/classes
,或在src/main/application
下生成文件(就像我们对一个项目所做的那样),然后它们将自动被maven-ear-plugin接收。