2015-04-04 70 views
10

在IntelliJ 14.1中,當爲一個maven項目調用Build > Rebuild Project時究竟發生了什麼。IntelliJ Build>重建項目調用maven?

  • 它調用mvn編譯?
  • 它做獨立於maven的東西嗎?

我試圖測試這一點,當我點擊Build > Rebuild Project我看不到這表明行家任何控制檯輸出運行,如果我從Maven項目運行Maven查看我得到行家的輸出。

那麼IntelliJ Build > Rebuild項目和構建工具如maven/gradle/ant之間的關係究竟是什麼?

回答

15

不,IntelliJ IDEA make不會調用Maven。當您打開Maven或Gradle項目時,它會讀取項目的設置並將它們存儲爲其內部項目模型的一部分。當您調用Build時,它會使用導入的設置使用其自己的構建系統編譯您的項目。

這樣做的好處是IntelliJ IDEA構建系統支持非常細粒度的增量重建(例如,如果更改方法的簽名,它將僅重新編譯實際調用該方法的那些類,而不會重新編譯任何其他代碼)。

請注意,您可以將IntelliJ IDEA配置爲在主項目編譯之前或之後運行Ant任務或Maven目標,因此如果您的構建執行的是非標準操作,則仍然可以在IntelliJ IDEA構建中使用它系統。