【发布时间】:2012-10-25 10:59:05
【问题描述】:
我有一个 jenkins 构建管道,其中第一个作业调用 mvn clean package 来编译和构建我的 java 项目。该工件随后被复制到一堆测试作业中,以确保我的构建质量。链中的最后一个作业应该将工件部署到我的 nexus 存储库。
我现在的问题是,当我只有带有 maven 的最终 jar myproject-1.2.0-SNAPSHOT.jar 时,如何将文件部署到 nexus?
我试过了
mvn deploy:deploy-file
但是这个插件需要获取关于 groupId、artifact id、版本等的信息。我不想在我的部署作业中知道这些信息。 jar中的信息不是存储在某些maven文件中吗? 我只想说nexus,这里有神器,拿去吧。
【问题讨论】:
-
Jenkins 具有部署到存储库的内置功能 - 使用它,不要重新发明轮子。
-
我建议考虑将其更改为单个作业并让 Maven 构建和打包工件,让 Maven 测试工件(如果这需要一段时间,请使用集成测试阶段)然后如果一切顺利,让 Jenkins 部署工件。您可以使用 Maven 进行部署,但通常最好让 Jenkins 在确定工作中的所有内容都已成功完成后进行部署。
标签: java maven deployment nexus