我们公司已经定义了一些关于 Maven poms 的“最佳实践”。例如,为资源处理指定 utf-8、要过滤哪些文件夹、处理单元测试与集成测试以及编译器设置。
现在,这些最佳实践记录在我们公司的 wiki 上,但是当“最佳实践”列表发生变化时,这些变化很少反射(reflect)在项目 poms 中,直到出现问题。人性就是这样……
有没有什么方法可以通过 Maven 提供/强制执行这些设置和属性?这几乎就像给每个项目一个父 pom.xml,但我不想(也不能)让所有这些项目都引用同一个父 pom。
我们需要一种既适用于开发人员的机器又适用于我们的 Hudson CI 服务器的方法。
最佳答案
唯一的 Maven 解决方案是一个共同的 parent 。也许如果您使用“已释放”的 parent ,您就可以做到吗?
创建一个仅包含父 pom 的项目,然后运行发布插件,将其发布到您的内部存储库。然后将该父项用作所有项目的父项,让它们从您的存储库下载它而不是通过相对路径名查找它?
关于java - 跨不相关项目共享 Maven pom.xml 部分的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4155590/