2017-08-14 87 views
0

我正在使用maven-ear-plugin構建一個帶有瘦骨w w戰爭的ear文件。SkinnyWars導入衝突的快照

我與另一支球隊提供每日快照和我 得到什麼工作的情況是,如果我還沒有建立快照,本地然後

EAR文件具有每日構建(這是很好)和戰爭文件 有我最近的快照(這是不好的)。

例如EAR文件將有 imported1-2017-010101.jar 和戰爭文件將有 imported1-SNAPSHOT.jar

看來,這是因爲在他們的名日期戳,而快照不會每日構建發生。

如果我在構建ear文件之前構建導入庫的快照。 例如耳文件將有 imported1-SNAPSHOT.jar 和戰爭文件將不會有庫。

這是耳朵配置

<profile> 
    <id>skinny</id> 
    <activation> 
    <property> 
     <name>!skinny</name> 
    </property> 
    </activation> 
    <dependencies> 
    <dependency> 
     <groupId>my.library</groupId> 
     <artifactId>war-1</artifactId> 
     <type>pom</type> 
     <version>${project.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>my.library</groupId> 
     <artifactId>war-2</artifactId> 
     <type>pom</type> 
     <version>${project.version}</version> 
    </dependency> 

    </dependencies> 
    <build> 
    <plugins> 
     <plugin> 
     <artifactId>maven-ear-plugin</artifactId> 
     <configuration> 
      <defaultLibBundleDir>/lib</defaultLibBundleDir> 
      <skinnyWars>true</skinnyWars> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
</profile> 

有我有什麼不對或不插件只是沒有在這種情況下工作嗎?

回答

1

我通過查看我的Maven Repository快照行爲來解決此問題。

我使用Artifactory作爲maven Repository。它允許您選擇3種不同的行爲來命名您的快照,其中一個使用時間戳,其他使用-SNAPSHOT和其他接受部署者選擇的名稱。

我已將快照行爲更改爲-SNAPSHOT,從存儲庫中刪除較舊版本的快照(我不知道這是否真的有必要),現在可以正確創建skinnyWars。

[]的