2014-11-02 21 views
0

我是一個maven新手。 我的測試項目依賴於模塊項目(extended-java-client)。 我需要在模塊路徑上運行「mvn clean package」,這會爲我提供extended-java-client-Jar。maven軟件包子模塊和測試父母

然後,我需要運行「mvn clean install test」來運行測試項目。 但它不工作,它沒有找到該模塊。 (我已經添加模塊/父標籤pom.xml文件)

任何想法? 在此先感謝

這是我的項目的結構:

Project A 
    *Extended-java-client(Module) 
     *pom.xml (jar file) 
    *src(the test classes) 
    *pom.xml 

延伸型>的pom.xml

<parent> 
     <groupId>project name</groupId> 
     <artifactId>project name</artifactId> 
     <version>1.0-SNAPSHOT</version> 
     <relativePath>../pom.xml</relativePath> // path to main pom 
    </parent> 

項目 - > pom.xml的

<modules> 
    <module>extended-java-client</module> 
</modules> 

回答

0

當你建立extended-java-client你應該使用運行$ mvn clean install而不是$ mvn clean package

原因:package創建該jar但將其保留在extended-java-client/target/目錄中,以便該jar文件僅對該項目可見。

調用install拷貝的jar成什麼Maven的所謂的「本地倉庫」,讓其他項目(如測試項目)可以訪問它。

希望有所幫助。

0

你什麼意思是由「它不工作」?您是否可以提供錯誤消息?

我建議使用Standard Directory Layout,與Maven開始時尤其如此。

不過,你不必跑mvn clean install testtest階段在install階段(也涉及到package階段)之前自動執行。

請參閱Introduction to the Build Lifecycle, Default Lifecycle「這些構建階段按順序執行以完成默認生命週期。」

+0

它無法運行測試。它不識別類的模塊。 – user3132709 2014-11-02 16:30:23