根据文档,Maven版本:执行目标检查项目,然后分叉一个新的Maven实例来构建它.由于某种原因,forked实例似乎忽略了用户settings.xml,这导致我的情况出错,因为该文件具有用于在父pom中组成存储库URL的属性的定义.
用户的settings.xml
"nexus"配置文件中始终处于活动状态的属性的定义.
<profiles>
<profile>
<id>nexus</id>
<properties>
<dist.url>http://host.com/nexus/content/repositories</dist.url>
</properties>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
Run Code Online (Sandbox Code Playgroud)Parent的pom.xml
使用定义的属性来组成存储库的URL.
<distributionManagement>
<repository>
<id>nexus</id>
<url>${dist.url}/releases</url>
</repository>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)执行命令:
mvn release:perform
Run Code Online (Sandbox Code Playgroud)输出(表示已成功检出,构建,测试和打包项目):
[INFO] Uploading: ${dist.url}/releases/com/acme/access/my-project/1.0/my-project-1.0.jar
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] BUILD FAILURE
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] Total time: 3.659s
[INFO] [INFO] Finished at: Wed Aug 01 14:40:23 EDT 2012
[INFO] [INFO] Final Memory: 21M/307M
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [WARNING] The requested profile "nexus" could not be activated because it …Run Code Online (Sandbox Code Playgroud)