API 文件 | CompileOptions |
---|
Java 編譯的主要選項。
屬性 | 描述 |
annotationProcessorGeneratedSourcesDirectory | 已過時 已取代 放置註解處理器產生之來源檔案的目錄。 |
annotationProcessorPath | 用於載入註解處理器的類別路徑。此路徑也用於註解處理器探索。 |
bootstrapClasspath | 用於編譯器程序的引導類別路徑。預設為 |
compilerArgs | 傳回要傳遞給編譯器的任何其他引數。預設為空列表。此處可以新增 DSL 不支援的編譯器引數。例如,可以傳遞較新 Java 版本中新增的 |
compilerArgumentProviders | 編譯器引數提供者。 |
debug | 告知是否在產生的類別檔案中包含偵錯資訊。預設為 |
debugOptions | 傳回用於產生偵錯資訊的選項。 |
deprecation | 告知是否記錄已過時成員或類別之使用方式的詳細資訊。預設為 |
encoding | 讀取原始碼檔案時要使用的字元編碼。預設為 |
extensionDirs | 用於編譯器程序的擴充目錄。預設為 |
failOnError | 告知編譯失敗時是否使建置失敗。預設為 |
fork | 告知是否在其自己的程序中執行編譯器。請注意,這不一定表示將為每個編譯任務建立新的程序。預設為 |
forkOptions | 傳回用於在子程序中執行編譯器的選項。 |
generatedSourceOutputDirectory | 放置註解處理器產生之來源檔案的目錄。 |
headerOutputDirectory | 如果此選項設定為非空目錄,則會將其傳遞給 Java 編譯器的 `-h` 選項,提示它將原生標頭產生到該目錄。 |
incremental | 告知是否使用增量編譯功能。請參閱 |
incrementalAfterFailure | 孵化中 用於在失敗後啟用或停用增量編譯。 |
javaModuleMainClass | 如果模組應為可執行檔,請設定 Java 模組的主要類別。 |
javaModuleVersion | 設定 Java 模組的版本。 |
listFiles | 告知是否記錄要編譯的檔案。預設為 |
release | 為此編譯任務設定 Java 語言版本 ( |
sourcepath | 用於編譯的原始碼路徑。 |
verbose | 告知是否產生詳細輸出。預設為 |
warnings | 告知是否記錄警告訊息。預設值為 |
方法 | 描述 |
debug(debugArgs) | 已過時 使用具名參數語法設定 |
fork(forkArgs) | 已過時 使用具名參數語法設定 |
File
annotationProcessorGeneratedSourcesDirectory
注意:此屬性已過時,將在下一個 Gradle 主要版本中移除。
注意:此屬性已由 generatedSourceOutputDirectory 取代。
放置註解處理器產生之來源檔案的目錄。
- 使用
java
外掛程式的預設值 ${project.layout.buildDirectory}
/generated/sources/annotationProcessor/${sourceDirectorySet.name}
/${sourceSet.name}
FileCollection
annotationProcessorPath
用於載入註解處理器的類別路徑。此路徑也用於註解處理器探索。
- 使用
java
外掛程式的預設值 sourceSet
.annotationProcessorPath
傳回要傳遞給編譯器的任何其他引數。預設為空列表。此處可以新增 DSL 不支援的編譯器引數。例如,可以傳遞較新 Java 版本中新增的 --enable-preview
選項
compilerArgs.add("--enable-preview")
請注意,如果新增 --release
,則會忽略 -target
和 -source
。
- 使用
java
外掛程式的預設值 []
告知是否在產生的類別檔案中包含偵錯資訊。預設為 true
。請參閱 DebugOptions.getDebugLevel()
以了解將產生哪些偵錯資訊。
- 使用
java
外掛程式的預設值 true
DebugOptions
debugOptions
傳回用於產生偵錯資訊的選項。
ForkOptions
forkOptions
傳回用於在子程序中執行編譯器的選項。
DirectoryProperty
generatedSourceOutputDirectory
放置註解處理器產生之來源檔案的目錄。
- 使用
java
外掛程式的預設值 ${project.layout.buildDirectory}
/generated/sources/annotationProcessor/${sourceDirectorySet.name}
/${sourceSet.name}
DirectoryProperty
headerOutputDirectory
如果此選項設定為非空目錄,則會將其傳遞給 Java 編譯器的 `-h` 選項,提示它將原生標頭產生到該目錄。
- 使用
java
外掛程式的預設值 ${project.layout.buildDirectory}
/generated/sources/headers/${sourceDirectorySet.name}
/${sourceSet.name}
注意:此屬性為孵化中,並且可能在 Gradle 的未來版本中變更。
用於在失敗後啟用或停用增量編譯。
預設情況下,Java 和 Groovy 會在失敗後啟用增量編譯。它對 Scala 沒有影響。如果未啟用增量編譯,則它沒有任何作用。
當使用 Java 命令列編譯器時,亦即當自訂 java 首頁傳遞至 forkOptions.javaHome 或 javac 傳遞至 forkOptions.executable 時,此最佳化會自動停用,因為編譯器不是透過編譯器 API 叫用。
- 使用
java
外掛程式的預設值 true
為此編譯任務設定 Java 語言版本 (--release
編譯器旗標)。
如果設定,它將優先於 AbstractCompile.getSourceCompatibility()
和 AbstractCompile.getTargetCompatibility()
設定。
此選項僅由 JavaCompile
任務採用。
FileCollection
sourcepath
用於編譯的原始碼路徑。
原始碼路徑指示來源檔案的位置,這些來源檔案在必要時可能會被編譯。它實際上是類別路徑的補充,其中要編譯的類別採用原始碼形式。它不指示正在編譯的實際主要來源。
對於使用相依性管理的現代建置,Java 編譯器的原始碼路徑功能很少需要。
原始碼路徑的預設值為 null
,表示空原始碼路徑。請注意,這與 javac
的 -sourcepath
選項的預設值不同,後者的預設值是使用 -classpath
指定的值。如果您希望使用任何原始碼路徑,則必須明確設定它。
- 使用
java
外掛程式的預設值 null
CompileOptions
debug
(Map
<String
, Object
>
debugArgs)
Map
<String
, Object
>注意:此方法已過時,將在下一個 Gradle 主要版本中移除。
使用具名參數語法設定 DebugOptions
的便利方法。呼叫此方法會將 debug
設定為 true
。
CompileOptions
fork
(Map
<String
, Object
>
forkArgs)
Map
<String
, Object
>注意:此方法已過時,將在下一個 Gradle 主要版本中移除。
使用具名參數語法設定 ForkOptions
的便利方法。呼叫此方法會將 fork
設定為 true
。