jar名称中的版本

hus*_*ayt 2 intellij-idea maven

当我将mvn项目导入Intellij时,它生成的jar文件不包含版本.但是mvn生成的jar有name-version.jar格式.所以我最终得到了两个jar文件,一个是版本而另一个是没有版本.我当然可以在Intellij设置中更改模块名称以包含版本.但每当我更改pom文件时,这将被重置.

也许别人有更好的主意?

Ste*_*lly 6

Maven 在磁盘上生成的jar名称是由/project/build/finalName你控制的,如果你编辑你pom.xml看起来像

<project>
  ...
  <build>
    ...
    <finalName>${artifactId}</finalName>
    ...
  </build>
  ...
</project>
Run Code Online (Sandbox Code Playgroud)

然后Maven将生成没有版本的jar文件.

注意

finalName仅控制磁盘上文件的名称.将该文件传输到本地存储库缓存或远程存储库后,将重命名该文件以匹配存储库布局(即${artifactId}-${version}.${type},${artifactId}-${version}-${classifier}.${type}对于具有分类器的工件).您无法更改存储库使用的格式.

我添加了上面的注释,因为在了解finalName参数时,每个人似乎都想做的第一件事就是尝试更改存储库中的名称.