2012-07-17 204 views
0

我們在多項目環境中使用Maven2。其實我正在處理依賴範圍。在目標解決方案中,我想通過設置類路徑將所有依賴項提交給vm。Maven2無法解析子依賴關係

Pom_Project_A_.xml

<dependencies> 
    <dependency>log4j</dependency> 
    <dependency>commons-io</dependency> 
    <dependency>...</dependency> 
</dependencies> 

Pom_Project_B.xml

<dependencies> 
    <dependency>Project_A</dependency> 
</dependencies> 

當我想編譯工程 「B」 行家着決心Log4j和其他的 「subdependencies」 項目中已定義的 「A」 。

是否有可能改變這種行爲? 非常感謝

+0

向我們展示一個pom.xml-s的實例。 – carlspring 2012-07-17 13:52:50

+0

謝謝卡爾。看到我的答案。 ;) – Mirko 2012-07-18 06:59:57

回答

0

範圍「編譯」是我所需要的。 我感到困惑的範圍編譯,運行時,測試等與行家目標封裝,組裝等

波姆項目A:

<parent> 
    <groupId>net.company</groupId> 
    <artifactId>superpom</artifactId> 
    <version>1.0.2</version> 
</parent> 

<groupId>net.company.projectA</groupId> 
<artifactId>projectA</artifactId> 
<version>1.1.0-SNAPSHOT</version> 
<packaging>jar</packaging> 
<dependencies> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.16</version> 
     <scope>compile</scope> 
    </dependency> 
</dependencies> 

波姆項目B:

<parent> 
    <groupId>net.company</groupId> 
    <artifactId>superpom</artifactId> 
    <version>1.0.2</version> 
</parent> 

<groupId>net.company.projectB</groupId> 
<artifactId>projectB</artifactId> 
<version>1.1.2-SNAPSHOT</version> 
<packaging>jar</packaging> 
<dependencies> 
    <dependency> 
     <groupId>net.company.projectA</groupId> 
     <artifactId>projectA</artifactId> 
     <version>1.1.0-SNAPSHOT</version> 
     <scope>compile</scope> 
    </dependency> 
</dependencies>