對於Jaybird(Firebird JDBC驅動程序)的發佈,我們也想發佈到Maven存儲庫。我正在考慮如何命名/版本工件,因爲每個受支持的Java版本都有不同的版本(對於即將推出的Jaybird 2.2,它將成爲Java 5/JDBC 3,Java 6/JDBC 4.0和Java 7/JDBC 4.1)。爲不同的JVM版本部署Maven構件
我發現命名JVM特定版本的三種不同的方式:在版本
- JVM版本在工件(如
<artifactId>jaybird-jdk15</<artifactId>
) - JVM版本(例如
<version>2.2.0-jdk15</version>
) - 使用分類(例如
<classifier>jdk15</classifier>
)
由於構建版本具有不同的源代碼,因此可以認爲JVM變體實際上是不同的t工件(選項1)。我已經看到PostgreSQL JDBC使用選項2.選項3具有(AFAIK)的缺點是不能包含特定於版本的源和javadoc。
我想知道如果我錯過了JVM特定的文物完全不同的選項或Maven的功能,或者如果有版本控制這些類型文物的首選方法。
注:Jaybird構建過程本身並沒有使用 Maven的
只是另一個數據點,oracle使用選項1,其工件名爲ojdbc14,ojdbc5或ojdbc6。我認爲分類器是正確的方法,但是您提到了關於附加源和javadoc工件的非常好的一點。 – 2012-03-04 14:45:44
[testng](http://repo1.maven.org/maven2/org/testng/testng/5.10/)在版本'5.11'之前爲'jdk14'和'jdk15'使用了'Option 3'。它還部署了'source'和'javadoc',但不知道它們是否都是通用的。 – Raghuram 2012-03-04 17:30:17