我的名为“testproject”的 java/maven 项目与我的 jenkins 和 nexus 存储库相关联:
我的 pom.xml 看起来像:
....
<distributionManagement>
<!-- use the following if you're not using a snapshot version. -->
<repository>
<id>nexus</id>
<name>RepositoryProxy</name>
<url>http://nexus:8080/nexus/content/repositories/releases</url>
</repository>
<!-- use the following if you ARE using a snapshot version. -->
<snapshotRepository>
<id>nexus</id>
<name>RepositoryProxy</name>
<url>http://nexus:8080/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
......
在我的 Jenkins 设置中,我有:
Build - maven3 - clean deploy
正如预期的那样,jenkins 将 Artifact 上传到 Nexus。查看 jenkins 构建的控制台输出,如下所示:
[INFO] --- maven-jar-plugin:2.3.1:jar (default-jar) @ testproject ---
[INFO] Building jar: /var/lib/jenkins/workspace/testproject/target/testproject-0.1-SNAPSHOT.jar
[INFO]
[INFO] --- maven-install-plugin:2.3.1:install (default-install) @ testproject ---
[INFO] Installing /var/lib/jenkins/workspace/testproject/target/testproject-0.1-SNAPSHOT.jar to /var/lib/jenkins/.m2/repository/com/dummy/testproject/0.1-SNAPSHOT/testproject-0.1- SNAPSHOT.jar
[INFO] Installing /var/lib/jenkins/workspace/testproject/pom.xml to /var/lib/jenkins/.m2/repository/com/dummy/testproject/0.1-SNAPSHOT/testproject-0.1-SNAPSHOT.pom
[INFO]
[INFO] --- maven-deploy-plugin:2.5:deploy (default-deploy) @ testproject ---
Downloading: http://nexus:8080/nexus/content/repositories/snapshots/com/dummy/testproject/0.1-SNAPSHOT/maven-metadata.xml
Downloaded: http://nexus:8080/nexus/content/repositories/snapshots/com/dummy/testproject/0.1-SNAPSHOT/maven-metadata.xml (1012 B at 28.2 KB/sec)
Uploading: http://nexus:8080/nexus/content/repositories/snapshots/com/dummy/testproject/0.1-SNAPSHOT/testproject-0.1-20120509.161644-74.jar
Uploaded: http://nexus:8080/nexus/content/repositories/snapshots/com/dummy/testproject/0.1-SNAPSHOT/testproject-0.1-20120509.161644-74.jar (47 KB at 748.5 KB/sec)
Uploading: http://nexus:8080/nexus/content/repositories/snapshots/com/dummy/testproject/0.1-SNAPSHOT/testproject-0.1-20120509.161644-74.pom
Uploaded: http://nexus:8080/nexus/content/repositories/snapshots/com/dummy/testproject/0.1-SNAPSHOT/testproject-0.1-20120509.161644-74.pom (6 KB at 149.3 KB/sec)
问题是 :
鉴于我在 pom.xml 中指定的版本是
<version>0.1-SNAPSHOT</version>
最佳答案
maven deploy plugin page告诉“默认情况下,将 Artifact 的快照版本部署到存储库时,会为其添加时间戳”。因此,当您调用 mvn deploy
时,它是由插件创建的。 .
我不知道您在 2) 中想要的是否可行。我认为这可能会给 maven 带来一些麻烦。
当您将 maven 与 SNAPSHOT 依赖项一起使用时,时间戳用于检查 SNAPSHOT 的最新版本。更改快照的格式可能会导致此机制失败。
关于maven - Jenkins maven 将 jar 部署到 nexus - Artifact 命名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10533670/