2016-04-25 29 views
-1

我對Maven文件夾主文件夾和文件夾測試之間的區別有點困惑。截至目前,我只是複製並粘貼我的源代碼,並且它工作正常。我沒有得到與主文件夾完全相同的另一個文件夾的意義是什麼?有人可以向我解釋這一點。Maven中主文件夾和測試文件夾之間的差異

另外:

  • 是什麼安裝和編譯的區別。
  • 那麼對於這個命令:mvn archetype:generate,是否生成目標?那麼什麼是原型?

感謝

+1

https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html:'main':應用程序源/資源,同時'test':測試來源/資源。這裏的所有都是它的。你在這裏問4或5個無關的問題。這與安裝或編譯階段無關。這與原型無關。 – Tunaki

回答

1

main文件夾包含您的應用程序代碼和資源,以及test文件夾包含,好了,測試代碼和資源。所以不要複製你的應用程序代碼,而只是測試。然後測試源自動添加到測試階段的類路徑中。

有關installcompile之間的差異,請參閱https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html。基本上,安裝也包含編譯和更大量的目標(如執行測試,包裝,安裝到本地倉庫。

generate將是目標,是正確的。archetypemaven-archetype-plugin短形式和手段的插件,它包含了目標。通過與名稱模式默認插件maven-*-plugin*-maven-plugin可縮短這種方式。文件夾

+0

所以測試的重點是幾乎「測試」實驗代碼,以便後來實施到穩定版本? 另外,這是否意味着在mvn clean,clean是一個插件? – Pablo

+0

不,你把你的單元測試放在那裏。 – dunni

+0

對於清潔,還有一個乾淨的插件,它被映射到清潔階段。如果您只鍵入mvn clean,則執行階段,如果您鍵入mvn clean:clean,您將執行乾淨的插件(將由mvn clean自動調用)的目標。 – dunni

1
  • 分離test之間src是一個標準的做法,即在兩個相同的封裝結構保證你com.some.Class發現它的方式,而且是可見的時候com.some.ClassTest單元測試運行。
  • installcompile之間的區別。閱讀有關the Maven lifecycle的文檔。實際上,每次調用一個構建階段時,在生命週期中定義的每個其他構建階段都按照定義的順序調用。
  • Documentation about what is Archetype
相關問題