如何强制maven将版本号保留在依赖文件名之外?

Jar*_*red 2 java maven-2

我正在使用maven来构建一个".ear"项目,它解决了maven存储库中的依赖关系,然后将它们打包成一个耳朵(这可能是一个多余的句子......).

当依赖项出现在ear文件中时,它们将根据以下格式命名:

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

我希望他们被命名为:

<artifactId>.<type>
Run Code Online (Sandbox Code Playgroud)

有人能指出我正确的方向吗?

小智 5

如果您正在使用maven-assembly-plugin构建您的耳朵,则可以outputFileNameMapping在描述符中使用该属性:http://maven.apache.org/plugins/maven-assembly-plugin/assembly.html#class_dependencySet

然而,你可能的时候使用Maven的耳插件,在这种情况下,你可以自定义更好bundleFileName,如所描述这里.

  • 好答案.我最终使用`<outputFileNameMapping> $ {artifact.build.finalName}.$ {artifact.extension} </ outputFileNameMapping>`和其他项目`<outputFileNameMapping> $ {artifact.name}.$ {artifact.extension} </outputFileNameMapping>`. (2认同)