2016-01-17 88 views

回答

2

compilerArgs

設置參數傳遞到編譯器,如果叉設置爲true。例如:

<compilerArgs> 
    <arg>-Xmaxerrs=1000</arg> 
    <arg>-Xlint</arg> 
    <arg>-J-Duser.language=en_us</arg> 
</compilerArgs> 

這些觀點只創建一個新的JVM這就是分叉是當意義。如果你沒有fork,編譯器就會像Maven本身一樣運行在同一個JVM中。

+0

它有沒有一些機制可以將參數傳遞給編譯的實際模塊? –

+0

這是用來配置一個新的JVM--一個運行javac的 - 並且與實際的編譯部分沒有任何關係。 –

+1

@ThorbjørnRavnAndersen不是真的:-Xlint是一個javac選項,而不是JVM選項。所以是-Xmaxerrs = 1000。在Maven JVM中運行編譯器之前,最後一個可以設置爲屬性。 –

1

因爲如果fork未設置爲true,則編譯過程發生在運行Maven的同一個JVM實例中。 JVM參數將與Maven運行的實例的JVM參數相同。當啓用分支時,編譯會發生在JVM的新實例上,您可以設置新實例的參數。

相關問題