Maven发布:准备失败,提示“必须指定scm连接或developerConnection”

42
我正在尝试使用mvn release:prepare发布我的Maven项目,但出现以下错误:

Caused by: org.apache.maven.plugin.MojoFailureException: 缺少所需的设置:必须指定scm连接或developerConnection。

在阅读了有关这些设置的maven.apache.org文档之后,我发现有SVN(版本控制)设置。 但我没有使用版本控制。在这种情况下,我该如何进行Maven发布呢? 我正在使用Maven 3.0.3。

2
你不使用任何版本控制吗?我想知道没有版本控制,发布管理怎么能够运作。 - Bevor
1
你具体想做什么?对你来说,“发布”是什么意思?可能有更好的方法可以实现你想要的,而不必使用发布插件。 - Simon Hellinger
我想让我的Maven项目从1.0-SNAPSHOT升级到1.1-SNAPSHOT,并且让Maven为我的1.0版本生成jar包。 - Henrique Ordine
我正在使用GIT进行版本控制,但仍然看到这个错误。 - vivex
4个回答

50

如果您只想更改版本,则可能会使用Versions Maven Plugin

versions:set可能是一个不错的选择。

请注意,如果您未使用SCM,请在使用以下命令之前进行完全备份。

mvn versions:set -DnewVersion=1.0 
mvn clean install
mvn versions:set -DnewVersion=1.1-SNAPSHOT 
mvn clean install
无论如何,我强烈建议并鼓励您使用SCM,并遵循Maven良好实践执行发布。希望这能帮到您。

这个不会自增,对吗? - Muzi Jack
@muzijack,它只需设置为我们想要的任何版本。 - Charlee Chitsuk
对于多模块项目,您可以添加“-DprocessAllModules=true”来更新所有子模块。 - Thomas Taylor

16

愿你的pom.xml文件没有该条目

    <scm>        
    <connection>scm:svn:https://host:port/abc/xyz/trunk</connection>
 <developerConnection>scm:svn:https://host:port/abc/xyz/trunk</developerConnection>
    </scm>

<build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.5.2</version>
                    <configuration>
                        <tagBase>https://host:port/abc/xyz/tag</tagBase>
                        <releaseProfiles>release</releaseProfiles>
                    </configuration>
                </plugin>               
            </plugins>
        </pluginManagement>
    </build> 

4

您需要添加SCM配置。 在下面的示例中,我将我的git存储库添加到主分支

<scm>
    <developerConnection>
        scm:git:git@github.com:tufac2/sfg-pet-clinic.git
    </developerConnection>
</scm>

如果我没有主控访问权限,它能工作吗? - Satyam Raj

0
在Springboot中,答案取决于您使用的插件。
docker-maven-plugin:
mvn docker:build
dockerfile-maven-plugin:
mvn dockerfile:build
希望这可以帮助您。
敬礼

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接