2012-05-15 33 views
1

我遇到問題了,我有一個基於包含模塊的系統的項目。這些模塊是其他Maven項目,並從系統POM引用。我的問題是我與同事共享系統項目,我們有不同的模塊。只有在存在Maven依賴項時才存在

那麼,有沒有辦法告訴Maven我只想包含一個在我的POM中引用的模塊,只要這個模塊存在?我的意思是,沒有編譯失敗。

謝謝!

+2

我想你可以聲明它是可選的。 http://maven.apache.org/pom.html#Dependencies –

+0

http://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html –

回答

1

使用dependencyManagementis將所有依賴信息拉入公共POM文件,簡化了子POM文件中的引用。

0

有幾種解決方案,取決於您可以做什麼/想要達到什麼。

一種方法是在貴公司安裝Maven存儲庫服務器(在本地局域網或您和您的同事共享的局域網中)。建立系統,然後將模塊deploy發送到服務器。

在你的構建,你可以添加這個新的服務器是這樣的(documentation):

<project> 
    ... 
    <repositories> 
    <repository> 
     <id>my-internal-site</id> 
     <url>http://myserver/repo</url> 
    </repository> 
    </repositories> 
    ... 
</project> 

或者你也可以複製兩者基本系統,並與當地mvn install建立它。這會將所有工件複製到本地緩存中。

從那裏,你可以像往常一樣引用它們。您不需要包含所有模塊;只是你真正需要的。這樣,你和你的朋友就不必使用相同的依賴關係。

相關問題