2011-07-26 51 views
15

我的理解是否正確,即Java構建器將scr路徑上的源代碼重新編譯爲輸出路徑,如果自動構建已激活或通過「ctrl + b」或通過javac引發驗證錯誤,通常會在每個「ctrl + s」後發生。Java和Maven構建器在eclipse中如何一起工作?

至於Maven2Bulder。我剛剛克隆了m2e-core git存儲庫,並且有相應的類org.eclipse.m2e.core.internal.builder.MavenBuilder,這是相當複雜的東西。

<projectDescription> 
    <name>modeshape-example-repositories</name> 
    <comment></comment> 
    <projects> 
    </projects> 
    <buildSpec> 
     <buildCommand> 
      <name>org.eclipse.jdt.core.javabuilder</name> 
      <arguments> 
      </arguments> 
     </buildCommand> 
     <buildCommand> 
      <name>org.eclipse.m2e.core.maven2Builder</name> 
      <arguments> 
      </arguments> 
     </buildCommand> 
    </buildSpec> 
    <natures> 
     <nature>org.eclipse.m2e.core.maven2Nature</nature> 
     <nature>org.eclipse.jdt.core.javanature</nature> 
    </natures> 
</projectDescription> 

我以爲它會pom.xml中,約回購的位置和settings.xml中或某些個人資料信息和當前運行配置的目標/目標m2eclipse的變量,它只是運行MVN本段信息,但它做得更多,它可以產生意想不到的行爲。

順便說一句,它只用於開發人員實際運行時>一些maven目標...?

回答

12

Maven構建器的主要目的是確保POM文件的正確性,並拉下您所需的依賴關係。如果你保存你的POM文件,它將會出去檢查新的依賴關係,並且當它找不到依賴時會報告錯誤。

此外,Maven的建設者將運行一個Maven構建,對您已在Preferences -> Maven->Goal to run after updating project configuration你對你的項目在Eclipse中做了Project->Clean...或更改的POM文件,並從Eclipse中保存後設置的目標。

時,Java Builder仍然是負責建設該項目,並在報告中存在的問題編譯器錯誤查看,對於內置在Eclipse的JUnit運行提供輸入等

+4

我沒有看到任何選項首選項> Maven作爲構建時的目標。這意味着當我保存pom,構建/清理項目時,MavenBuilder會運行?怎麼樣的java生成器,它應該運行時,CTRL + B不是嗎?或者只有當我在src路徑上保存* .java文件時纔會運行? – lisak

+1

如果構建自動打開,那麼當您保存.java文件時,將會構建java構建器。如果沒有,那麼當你按下ctrl + b時它會運行。 –

+1

我說的是MavenBuilder,你說過「maven構建器會運行一個maven build,直到你在你的項目中進行清理後在Preferences - > Maven中設置的目標」 – lisak

相關問題