1

我目前正在构建一个新服务器来替换我们现有的实时系统,并借此机会将所有系统更新到最新状态。不幸的是,在最终确定转换之前,我们需要将这两个系统作为实时服务并行运行几个月。在此期间,我们将在每晚运行重建,因为服务器上运行的应用程序的开发正在进行中。

我遇到的问题是现有系统正在运行 Maven 2,而新系统正在运行 Maven 3。目前我们对新服务器的重建正在生成 Maven 警告(“[WARNING] 'build.plugins.plugin.version' for org.codehaus.mojo:versions-maven-plugin is missing”)并且应用程序无法构建。

是否有解决方案可以让我修复这些警告,以便一切都建立在 Maven 2 和 Maven 3 上?由于开发基础设施在 subversion 中分支代码不是一种选择。

查看一些文档,它建议将存储库定义移动为插件存储库定义。我可以将存储库添加到插件存储库中,同时将它们保留在存储库下吗?这会导致任何版本的 Maven 出现问题吗?或者是否有解决问题的替代方案?

4

1 回答 1

0

Maven 3 是向后兼容的,但更严格,所以如果你修复了 Maven 3 的 pom.xml,你不会破坏 Maven 2 的支持。

根据我的阅读,您只需要使用显式插件版本,这很容易做到,最佳实践是<pluginManagement>在项目通用的父 pom 的部分中进行。

于 2012-09-07T13:07:31.383 回答