Maven命名约定32 vs 64 bit和Windows vs Linux

fo_*_*x86 5 java dependencies maven

我有一个具有4个不同版本的库:32和64位Windows以及32和64位Linux。我试图找出将每个库上传到Maven存储库时的名称。现在,我有:

  <!--windows 32bit -->
  <groupId>com.lib-name.win</groupId>
  <artifactId>lib-name</artifactId>
  <classifier>x86<classifier>
  <version>10</version>

  <!--windows 64bit -->
  <groupId>com.lib-name.win</groupId>
  <artifactId>lib-name</artifactId>
  <classifier>x86-64<classifier>
  <version>10</version>

  <!--linux 32bit -->
  <groupId>com.lib-name.nix</groupId>
  <artifactId>lib-name</artifactId>
  <classifier>x86<classifier>
  <version>10</version>

  <!--linux 64bit -->
  <groupId>com.lib-name.nix</groupId>
  <artifactId>lib-name</artifactId>
  <classifier>x86-64<classifier>
  <version>10</version>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,是否有更标准的方式为Maven中的罐子命名?还是我步入正轨?

Dun*_*nes 3

来自http://maven.apache.org/pom.html

分类器: 分类器允许区分从相同 POM 构建但内容不同的工件。它是一些可选且任意的字符串,如果存在,则将其附加到版本号后面的工件名称中。

作为此元素的动机,请考虑一个项目,该项目提供了针对 JRE 1.5 的工件,但同时也提供了仍然支持 JRE 1.4 的工件。第一个工件可以配备分类器 jdk15,第二个工件可以配备 jdk14,以便客户可以选择使用哪个。

后一段表明他们希望分类器来执行您想要的那种任务。

然而,根据我的经验,我遇到的大多数项目都会为项目的每个分支发布单独的工件。我个人更喜欢这种方法,但这是一个品味问题。