Maven 发布问题:执行但不执行发布:准备

Maven 发布问题:执行但不执行发布:准备,maven,maven-release-plugin,Maven,Maven Release Plugin,我想我误解了maven发布插件的重要意义。我能够成功地完成mvn发布:准备,但mvn发布:执行总是失败 Maven版本: Apache Maven 3.0.3 (r1075438; 2011-02-28 11:31:09-0600) Maven home: C:\Program Files\apache-maven-3.0.3 Java version: 1.6.0_25, vendor: Sun Microsystems Inc. Java home: C:\Program Files\Jav

我想我误解了maven发布插件的重要意义。我能够成功地完成mvn发布:准备,但mvn发布:执行总是失败

Maven版本:

Apache Maven 3.0.3 (r1075438; 2011-02-28 11:31:09-0600)
Maven home: C:\Program Files\apache-maven-3.0.3
Java version: 1.6.0_25, vendor: Sun Microsystems Inc.
Java home: C:\Program Files\Java\jdk1.6.0_25\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
My POM.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.animals</groupId>
<artifactId>cats</artifactId>
<version>0.0.2-SNAPSHOT</version>
<packaging>jar</packaging>

<name>cats</name>
<url>http://maven.apache.org</url>

<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<scm>
    <connection>scm:hg:https://repo.org/repo</connection>
    <developerConnection>scm:hg:https://repo.org/repo</developerConnection>
</scm>

<build>
   <plugins>
     <plugin>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.1</version>
        <configuration>
              <preparationGoals>clean install</preparationGoals>
        </configuration>
 </plugin>
</plugins>
</build>

<distributionManagement>
<repository>
    <id>repo</id>
    <url>https://repo.org/repo</url>
    <uniqueVersion>false</uniqueVersion>
</repository>
</distributionManagement>

<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
  </dependency>
</dependencies>
</project>
我真的不知道为什么会这样。我试着为release:perform设置一个单独的存储库,但是运气不好,我试着为release:prepare和release:perform使用相同的存储库,我试着省略这一部分。我还尝试将maven发布插件中的准备目标更改为干净安装。所有这些都是其他stackoverflow用户发现有帮助的解决方案,但不幸的是,它们在这种情况下不起作用

是pom.xml配置中的问题,还是其他问题?如果有任何其他信息,你可能需要,请让我知道!我感谢你的时间和帮助

编辑:这是一个没有模块的非常简单的项目。0.0.1-SNAPSHOT是我目前定义的版本,所有其他Maven目标似乎都没有问题。我没有使用任何个人资料


编辑我已经编辑了这个问题以包含我的整个POM.xml

将其放到发布插件的配置中:安装修复了该问题。问题确实出在我的存储库上,而不是pom.xml上。

看来,您需要mvn release:stage而不是release:perform

您有多模块构建吗?您是否在mvn发布之前定义了0.0.1-SNAPSHOT这样的版本:prepare/mvn release:perform?您的构建是否使用mvn清洁包等?您需要激活一些配置文件吗?感谢您的快速响应。我将用答案更新这个问题扫描你发布的完整POM?你的SCM和分发URL是相同的-这是故意的吗?这是故意的,目的是为了弄清楚如何使用这个插件。这是允许的,还是我的问题?你的回购协议有什么问题?我正在经历一个类似的问题,我相信这是我的回购协议,但我不能完全弄清楚这个问题。mvn[compile | package]工作正常,但release:perform未能找到在错误的repo中查找的deps
[INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plug
in:2.5:deploy (default-deploy) on project cats: Failed to deploy artifacts: Coul
d not find artifact com.animals:cats:jar:0.0.1 in repo (https://my-repo-url)