API 文档 | CompileOptions |
---|
Java 编译的主要选项。
属性 | 描述 |
annotationProcessorGeneratedSourcesDirectory | 已弃用 已替换 用于放置由注解处理器生成的源文件的目录。 |
annotationProcessorPath | 用于加载注解处理器的 classpath。此路径也用于注解处理器发现。 |
bootstrapClasspath | 用于编译器进程的 bootstrap classpath。默认为 |
compilerArgs | 返回传递给编译器的任何附加参数。默认为空列表。此处可以添加 DSL 不支持的编译器参数。例如,可以传递较新 Java 版本中添加的 |
compilerArgumentProviders | 编译器参数提供者。 |
debug | 指定是否在生成的 class 文件中包含调试信息。默认为 |
debugOptions | 返回用于生成调试信息的选项。 |
deprecation | 指定是否记录已弃用成员或类用法的详细信息。默认为 |
encoding | 读取源文件时使用的字符编码。默认为 |
extensionDirs | 用于编译器进程的扩展目录。默认为 |
failOnError | 指定编译失败时是否使构建失败。默认为 |
fork | 指定是否在自己的进程中运行编译器。请注意,这不一定意味着每个编译任务都会创建一个新进程。默认为 |
forkOptions | 返回在子进程中运行编译器的选项。 |
generatedSourceOutputDirectory | 用于放置由注解处理器生成的源文件的目录。 |
headerOutputDirectory | 如果此选项设置为非 null 目录,则将传递给 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
用于加载注解处理器的 classpath。此路径也用于注解处理器发现。
- 使用
java
插件时的默认值 sourceSet
.annotationProcessorPath
返回传递给编译器的任何附加参数。默认为空列表。此处可以添加 DSL 不支持的编译器参数。例如,可以传递较新 Java 版本中添加的 --enable-preview
选项
compilerArgs.add("--enable-preview")
注意,如果添加了 --release
,则忽略 -target
和 -source
。
- 使用
java
插件时的默认值 []
指定是否在生成的 class 文件中包含调试信息。默认为 true
。有关将生成哪些调试信息,请参阅 DebugOptions.getDebugLevel()
。
- 使用
java
插件时的默认值 true
DebugOptions
debugOptions
返回用于生成调试信息的选项。
ForkOptions
forkOptions
返回在子进程中运行编译器的选项。
DirectoryProperty
generatedSourceOutputDirectory
用于放置由注解处理器生成的源文件的目录。
- 使用
java
插件时的默认值 ${project.layout.buildDirectory}
/generated/sources/annotationProcessor/${sourceDirectorySet.name}
/${sourceSet.name}
DirectoryProperty
headerOutputDirectory
如果此选项设置为非 null 目录,则将传递给 Java 编译器的 `-h` 选项,提示它在该目录中生成原生头文件。
- 使用
java
插件时的默认值 ${project.layout.buildDirectory}
/generated/sources/headers/${sourceDirectorySet.name}
/${sourceSet.name}
注意:此属性正处于孵化中,将来版本的 Gradle 中可能会更改。
用于在失败后启用或禁用增量编译。
默认情况下,Java 和 Groovy 在失败后启用增量编译。对 Scala 无效。如果未启用增量编译,也无效。
使用 Java 命令行编译器时(即通过 forkOptions.javaHome 传递自定义 Java home 或通过 forkOptions.executable 传递 javac),此优化会自动禁用,因为编译器不是通过编译器 API 调用的。
- 使用
java
插件时的默认值 true
为此编译任务配置 Java 语言版本(--release
编译器标志)。
如果设置此项,它将优先于 AbstractCompile.getSourceCompatibility()
和 AbstractCompile.getTargetCompatibility()
设置。
此选项仅由 JavaCompile
任务考虑。
FileCollection
sourcepath
用于编译的源路径。
源路径指示必要时可以编译的源文件的位置。它实际上是 classpath 的补充,要编译的类是以源文件形式存在的。它不指示正在编译的实际主要源文件。
对于使用依赖管理的现代构建,Java 编译器的 source path 功能很少需要。
source path 的默认值为 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
。