Maven默认分隔符

vpr*_*m86 6 java maven-2 jar

在a中pom.xml,如果我们尝试编译并创建一个JAR,则该名称将被视为

<artifactId>-<version>.jar
Run Code Online (Sandbox Code Playgroud)

是否有可以将默认分隔符' - '更改为其他内容的属性或设置?

我知道我们可以在创建jar后(或使用finalName)重命名它.我只是想知道其他人是否已经尝试过并取得了成功.

非常感谢提前!

Ric*_*ler 9

我不知道改变分隔符的方法.但是您可以finalName在pom上设置元素,以便将jar输出到具有该名称的目标目录.例如:

<build>
  ...
  <finalName>${project.artifactId}_${project.version}</finalName>
  <!--this is the default value
  <finalName>${artifactId}-${version}</finalName-->
  ...
Run Code Online (Sandbox Code Playgroud)

值得注意的是,无论您在finalName元素中设置什么,工件仍将使用默认名称安装/部署到存储库.

正如帕斯卡尔评论,使公约所覆盖的安装/部署的工件会导致对依赖机制的问题(它可能仍然工作,但公约的好处将丢失),因此在灵活性任何好处将被提高配置的详细程度胜过和复杂性 - 这非常复杂,谢谢.

  • 使用默认名称仍然将工件安装/部署到存储库是一件好事,否则会破坏依赖项解析机制.TBH,我没有看到改变这个惯例的重点...... (3认同)