2016-04-28 222 views
3

我使用JavaMaven編寫項目。在項目中,我有很多模塊。我的問題是我無法從其他模塊導入類。從其他模塊導入

我的項目結構如下:

Project 
|_ module1 
    |_ src 
     |_ com.xyz.project.md1 
      |_ Person.java 
    |_ pom.xml <- pom of module1 
|_ module2 
    |_ src 
     |_ com.xyz.project.md2 
      |_ Robot.java 
    |_ pom.xml <- pom of module2 
|_ pom.xml <- main Project pom 

module1module2Modules在我的項目,這是registred在pom.xml - 主體工程POM

,當我在Person.javamodule1我想從module2導入Robot.java,但我不能這樣做import com.xyz.project.md2.Robot爲什麼?

+0

不每個模塊有自己的pom.xml的?你應該在那裏聲明依賴關係。 –

+0

是我幾秒前添加的。刷新頁面 – czArek

+0

親愛的downvoters,你能告訴我爲什麼你給downvote? – czArek

回答

10

申報依賴於模塊1/pom.xml的MODULE2,這樣的事情:

<dependencies> 
    ... 
      <dependency> 
       <groupId>XX</groupId> 
       <artifactId>module2</artifactId> 
       <version>0.0.1-SNAPSHOT</version> 
      </dependency> 
    ... 
</dependencies> 
+0

就是這樣!謝謝 ;) – czArek

1

您必須在module1的項目中添加module2的項目作爲依賴項(maven dependency)。 multimodules並不意味着所有的模塊都具有自動依賴於Maven的,處理多模塊項目做如下相互

機制:

Collects all the available modules to build 
Sorts the projects into the correct build order 
Builds the selected projects in order 

希望這會有所幫助。