Git repo 的内部版本号 maven 插件

Posted

技术标签:

【中文标题】Git repo 的内部版本号 maven 插件【英文标题】:build number maven plugin for Git repo 【发布时间】:2018-07-16 10:22:12 【问题描述】:

之前在 svn 上的一个项目最近被移到了 github,之后我在创建构建时遇到了这个问题。它无法生成内部版本号并出现以下错误

Failed to execute goal org.codehaus.mojo:buildnumber-maven-plugin:1.4:create (default) on project line-management: An error has occurred while checking scm status. Exception while executing SCM command. Error while executing command. Error while executing process. Cannot run program "svn" (in directory "D:\workspace\project_git\project_management"): CreateProcess error=2, The system cannot find the file specified -> [Help 1]

pom.xml 的代码

<scm>
    <connection>scm:svn:http://some.svn.url/</connection>
</scm>    
<plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>buildnumber-maven-plugin</artifactId>
            <version>1.4</version>
            <executions>
                <execution>
                    <phase>validate</phase>
                    <goals>
                        <goal>create</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <doCheck>true</doCheck>
                <doUpdate>false</doUpdate>
                <timestampFormat>0,date,"yyyyMMddHHmmss"</timestampFormat>
                <timestampPropertyName>buildNumVar</timestampPropertyName>
                <shortRevisionLength>10</shortRevisionLength>
            </configuration>
        </plugin>

【问题讨论】:

错误:Cannot run program "svn" (in directory "D:\workspace\project_git\project_management"): CreateProcess error=2, The system cannot find the file specified -&gt; [Help 1] 【参考方案1】:

您的 scm 标签仍然包含到旧 svn 存储库的连接字符串。

您应该在此处提供新 git 存储库的 url,例如 &lt;connection&gt;scm:git:https://github.com/your-git-repo.git&lt;/connection&gt;。连接字符串详情请查看here。

【讨论】:

你将 scm 连接更改为 git 仍然收到错误消息 Cannot run program "svn"?【参考方案2】:

当你安装 svn 程序(例如 tortoise)时,你需要检查命令行选项。默认情况下,该选项被禁用。这对我有用。

【讨论】:

我已经删除了您答案的西班牙语部分,因为 Stack overflow 是一个仅限英文的网站。如果你想用西班牙语贡献,Stack Overflow 有西班牙语版本:es.***.com

以上是关于Git repo 的内部版本号 maven 插件的主要内容,如果未能解决你的问题,请参考以下文章

maven 打包时候修改包名称带上git版本号和打包时间

java环境变量配置图文详细版(JDK安装,Eclepse安装,Maven安装,Eclipse安装Git插件)...

是否可以使用 Maven POM 文件为 Maven 发布插件配置 GIT Tag?

eclipse使用git插件导入码云上的maven工程

捕获唯一的 Maven SNAPSHOT 内部版本号

如何通过使用 git 提交号作为 xcode 内部版本号来避免无限循环