当我将mvn项目导入Intellij时,它生成的jar文件不包含版本。但是mvn生成的jar有name-version.jar
格式。所以我最终得到了两个jar文件,一个是版本而另一个是没有版本。我当然可以在Intellij设置中更改模块名称以包含版本。但每当我更改pom文件时,这将被重置。
也许别人有更好的主意?
答案 0 :(得分:6)
Maven在磁盘上生成的jar名称由/project/build/finalName
控制,因此如果您编辑pom.xml
看起来像
<project>
...
<build>
...
<finalName>${artifactId}</finalName>
...
</build>
...
</project>
然后Maven将生成没有该版本的jar文件。
finalName
仅控制磁盘上文件的名称。将该文件传输到本地存储库缓存或远程存储库后,将重命名该文件以匹配存储库布局(即${artifactId}-${version}.${type}
或${artifactId}-${version}-${classifier}.${type}
以获取具有分类器的工件)。您无法更改存储库使用的格式。
我添加了上述注释,因为在了解finalName
参数时,每个人似乎都想做的第一件事就是尝试更改存储库中的名称。
答案 1 :(得分:1)
使用maven的版本标签
<version>0.0.1-SNAPSHOT</version>
不要让intellij创建没有版本标记的jar文件。