在maven安装插件上保留maven工件名称(默认安装)

在maven安装插件上保留maven工件名称(默认安装),maven,continuous-integration,maven-install-plugin,Maven,Continuous Integration,Maven Install Plugin,我尝试在工件名称中包含git提交哈希,以区分CI场景中的快照版本。 git哈希已成功包含在我的项目的目标/文件夹中,但在最后一个maven步骤中,它将工件复制到my HOME/.m2/repositories文件夹中,并将名称更改为ARTIFACTID-VERSION-mta.jar 如何从包含提交哈希的目标/文件夹中保留文件名 我查看了maven安装插件,但找不到“finalName”属性或类似的内容 [INFO] --- maven-install-plugin:2.5.2:install

我尝试在工件名称中包含git提交哈希,以区分CI场景中的快照版本。 git哈希已成功包含在我的项目的目标/文件夹中,但在最后一个maven步骤中,它将工件复制到my HOME/.m2/repositories文件夹中,并将名称更改为ARTIFACTID-VERSION-mta.jar

如何从包含提交哈希的目标/文件夹中保留文件名

我查看了maven安装插件,但找不到“finalName”属性或类似的内容

[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ projectname ---
[INFO] Installing PROJECTDIR/pom.xml to ~/.m2/repository/GroupIdDir/projectname/1.0.1/projectname-1.0.1.pom
[INFO] Installing PROJECTDIR/target/projectname-1.0.1-d054c42-mta.jar to ~/.m2/repository/GroupIdDir/projectname/1.0.1/projectname-1.0.1-mta.jar
我想最后一行是

[INFO] Installing PROJECTDIR/target/projectname-1.0.1-d054c42-mta.jar to ~/.m2/repository/GroupIdDir/projectname/1.0.1/projectname-1.0.1-d054c42-mta.jar

无法解决问题,因为它修改了输出文件夹。

很可能是因为存储库布局

存储库布局定义

这是Maven 2.x和 相关的蚂蚁任务

对于主要工件: /$groupId[0]/../${groupId[n]/$artifactId/$version/$artifactId-$version.$extension

对于次要工件: /$groupId[0]/../$groupId[n]/$artifactId/$version/$artifactId-$version-$classifier.$extension


请参见

您不能这样做。本地存储库中的名称位于
artifacId版本(-classifier)之后.type
约定,您无法更改它。请参阅我可以将提交哈希设置为分类器吗?您可以,但这确实意味着每次有新的提交时,其Maven坐标都会更改,因此每个项目(取决于它)都需要更改每个提交的
声明。请参阅。听起来好像您正在尝试重建Maven从头开始的快照机制。为什么不将您的项目版本设置为
1.0.1-SNAPSHOT
?我想知道,在将工件部署到其他地方后,哪个提交导致工件的快照版本或发布版本。如果有bug,应该很容易从部署的工件获得相关提交。然后不要添加此信息在文件名中。对于此用例,通常会将其添加到另一个文件的清单中。有关Git,请参阅。虽然此链接可能会回答问题,但最好在此处包含答案的基本部分,并提供链接以供参考。如果链接页面发生更改,则仅链接的答案可能无效