我正在開發一個具有EJB模塊的項目。由於這個模塊沒有進入我們的Maven版本庫(Nexus),所以出現了一個問題,因爲它缺少版本號。我目前正試圖解決這個問題,但我似乎無法按照我想要的方式來解決問題。Maven和EJB3 - 控制客戶端的名稱
在EJB-項目的pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ejb-plugin</artifactId>
<configuration>
<ejbVersion>3.0</ejbVersion>
<outputDirectory>${basedir}/target/classes </outputDirectory>
<jarName>MyProjectEJB</jarName>
<generateClient>true</generateClient>
<archive>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
</archive>
</configuration>
</plugin>
這是它原來的樣子。構建模塊產生兩個.jar文件:MyProjectEJB.jar和MyProjectEJB-client.jar。我試過下面添加版本編號:
<jarName>MyProjectEJB-${project.version}<jarName>
現在,我得到的是這樣的:MyProjectEJB-4.1-SNAPSHOT.jar和MyProjectEJB-4.1-快照client.jar中。這幾乎是正確的,但我真的很希望版本號在客戶端也是最後一個(所以MyProjectEJB-client-4.1-SNAPSHOT)。
我該如何做到這一點?
但artifactId的是jar文件的名字不同,是不是可能只是控制生成的jar的名稱,並保持原始信息的原樣? – Tobb
那麼在這種情況下,您並不控制客戶端庫的創建。 'maven-ejb-plugin'把客戶端分類器放在最後,對此你可以做很多事情。 – maba
好吧,我會嘗試一個發佈版本,看看它是否會被添加到Nexus,這是最重要的事情。 – Tobb