建立多模块maven项目
嗨,我在网上搜索过,读过一堆文章,所以有问题和文档,但我找不到解决办法,这里是我的问题 我有一个多模块maven项目,它包含三个模块a、B和C。 A和B独立,C依赖于A和B,当然我有一个父项目。我还设置了一个jenkins服务器来构建这些项目,以及一个nexus存储库 我的问题是,当我构建项目时,maven正确地构建了A和B,但对于C,它从nexus存储库下载了一个较旧的工件,当然它无法构建模块C。 我如何让maven使用安装在本地存储库中的当前构建的JAR,而不是nexus上的旧JAR A、B和C的版本设置为1.1.{build_number}-带有maven版本插件的快照,据我所知,maven应该从本地使用更新的版本,但它没有这样做。 起初,我不想发布数百行pom.xml,但如果您需要第节,我将提供它建立多模块maven项目,maven,jenkins,nexus,Maven,Jenkins,Nexus,嗨,我在网上搜索过,读过一堆文章,所以有问题和文档,但我找不到解决办法,这里是我的问题 我有一个多模块maven项目,它包含三个模块a、B和C。 A和B独立,C依赖于A和B,当然我有一个父项目。我还设置了一个jenkins服务器来构建这些项目,以及一个nexus存储库 我的问题是,当我构建项目时,maven正确地构建了A和B,但对于C,它从nexus存储库下载了一个较旧的工件,当然它无法构建模块C。 我如何让maven使用安装在本地存储库中的当前构建的JAR,而不是nexus上的旧JAR A、B
任何帮助都将不胜感激。谢谢大家! 我一直在子模块的pom中设置版本号,并更改为从父pom继承版本号。在模块
C
的pom模块A
和B
版本设置为${project.version}
中,我一直在设置子模块pom中的版本号,并更改为从父pom继承版本号。在模块C
的pom模块A
和B
版本设置为${project.version}
中,我正在使用Jenkins和Artifactory,当我构建一个多模块项目时,Maven首先查看本地Maven repo(.m2/存储库)。接下来,当构建正常时,二进制文件(A、B和C)被上传到Artifactory中。也许你可以选择Jenkins/Nexus使用本地回购而不是远程回购?嗨,Bruno,谢谢你的回答。我想要的正是您正在做的事情,但在我的例子中,maven忽略了本地存储库,我不知道如何让它使用当前构建的工件。你知道我应该去哪里吗?也许这个答案能帮上忙:Maven每天刷新一次本地依赖项,因此,也许你只需要更改此设置:嗨,它被设置为“始终”,但我现在设置为“从不”,以防止下载snpashot工件,但仍然忽略了本地repo中较新的工件。我使用Jenkins和Artifactory,当我构建多模块项目时,Maven首先查看本地Maven repo(.m2/存储库). 接下来,当构建正常时,二进制文件(A、B和C)被上传到Artifactory中。也许你可以选择Jenkins/Nexus使用本地回购而不是远程回购?嗨,Bruno,谢谢你的回答。我想要的正是您正在做的事情,但在我的例子中,maven忽略了本地存储库,我不知道如何让它使用当前构建的工件。你知道我应该去哪里看吗?也许这个答案会有帮助:Maven每天刷新本地依赖项一次,所以也许你只需要更改这个设置:Hi,它被设置为always,但我现在设置为never,以防止下载snpashot工件,但我的本地repo中更新的工件仍然被忽略。