CompileOptions

API 文档CompileOptions

Java 编译的主要选项。

属性

属性描述
annotationProcessorGeneratedSourcesDirectory
已弃用
已替换

用于放置注解处理器生成的源文件的目录。

annotationProcessorPath

用于加载注解处理器的类路径。此路径也用于注解处理器发现。

bootstrapClasspath

编译器进程要使用的引导类路径。默认为 null

compilerArgs

返回要传递给编译器的任何附加参数。默认为空列表。DSL 不支持的编译器参数可以在此处添加。例如,可以传递在较新 Java 版本中添加的 --enable-preview 选项

compilerArgumentProviders

编译器参数提供程序。

debug

指示是否在生成的类文件中包含调试信息。默认为 true。有关将生成哪些调试信息,请参阅 DebugOptions.getDebugLevel()

debugOptions

返回用于生成调试信息的选项。

deprecation

指示是否记录已弃用成员或类的使用详情。默认为 false

encoding

读取源文件时要使用的字符编码。默认为 null,在这种情况下将使用平台默认编码。

extensionDirs

编译器进程要使用的扩展目录。默认为 null

failOnError

指示当编译失败时是否使构建失败。默认为 true

fork

指示是否在其自己的进程中运行编译器。请注意,这不一定意味着将为每个编译任务创建一个新进程。默认为 false

forkOptions

返回用于在子进程中运行编译器的选项。

generatedSourceOutputDirectory

用于放置注解处理器生成的源文件的目录。

headerOutputDirectory

如果此选项设置为非空目录,它将被传递给 Java 编译器的 `-h` 选项,提示它在该目录中生成原生头文件。

incremental

告知是否使用增量编译功能。请参阅 CompileOptions.setIncremental(boolean)

incrementalAfterFailure
孵化中

用于在失败后启用或禁用增量编译。

javaModuleMainClass

如果模块应该是可执行的,则设置 Java 模块的主类。

javaModuleVersion

设置 Java 模块的版本。

listFiles

指示是否记录要编译的文件。默认为 false

release

为此编译任务配置 Java 语言版本 (--release 编译器标志)。

sourcepath

用于编译的源路径。

verbose

指示是否生成详细输出。默认为 false

warnings

指示是否记录警告消息。默认为 true

方法

方法描述
debug(debugArgs)
已弃用

使用命名参数语法设置 DebugOptions 的便捷方法。调用此方法会将 debug 设置为 true

fork(forkArgs)
已弃用

使用命名参数语法设置 ForkOptions 的便捷方法。调用此方法会将 fork 设置为 true

脚本块

没有脚本块

属性详情

File annotationProcessorGeneratedSourcesDirectory

注意:此属性已弃用,将在 Gradle 的下一个主要版本中删除。

注意:此属性已被 generatedSourceOutputDirectory 替换。

用于放置注解处理器生成的源文件的目录。

使用 java 插件的默认值
${project.layout.buildDirectory}/generated/sources/annotationProcessor/${sourceDirectorySet.name}/${sourceSet.name}

FileCollection annotationProcessorPath

用于加载注解处理器的类路径。此路径也用于注解处理器发现。

使用 java 插件的默认值
sourceSet.annotationProcessorPath

FileCollection bootstrapClasspath

编译器进程要使用的引导类路径。默认为 null

使用 java 插件的默认值
null

List<String> compilerArgs

返回要传递给编译器的任何附加参数。默认为空列表。DSL 不支持的编译器参数可以在此处添加。例如,可以传递在较新 Java 版本中添加的 --enable-preview 选项

compilerArgs.add("--enable-preview")

请注意,如果添加了 --release,则会忽略 -target-source

使用 java 插件的默认值
[]

List<CommandLineArgumentProvider> compilerArgumentProviders (只读)

编译器参数提供程序。

使用 java 插件的默认值
[]

boolean debug

指示是否在生成的类文件中包含调试信息。默认为 true。有关将生成哪些调试信息,请参阅 DebugOptions.getDebugLevel()

使用 java 插件的默认值
true

DebugOptions debugOptions

返回用于生成调试信息的选项。

boolean deprecation

指示是否记录已弃用成员或类的使用详情。默认为 false

使用 java 插件的默认值
false

String encoding

读取源文件时要使用的字符编码。默认为 null,在这种情况下将使用平台默认编码。

使用 java 插件的默认值
null

String extensionDirs

编译器进程要使用的扩展目录。默认为 null

使用 java 插件的默认值
null

boolean failOnError

指示当编译失败时是否使构建失败。默认为 true

使用 java 插件的默认值
true

boolean fork

指示是否在其自己的进程中运行编译器。请注意,这不一定意味着将为每个编译任务创建一个新进程。默认为 false

使用 java 插件的默认值
false

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}

boolean incremental

告知是否使用增量编译功能。请参阅 CompileOptions.setIncremental(boolean)

使用 java 插件的默认值
true

Property<Boolean> incrementalAfterFailure

注意:此属性正在孵化中,并且可能在 Gradle 的未来版本中更改。

用于在失败后启用或禁用增量编译。

默认情况下,失败后的增量编译对 Java 和 Groovy 启用。它对 Scala 没有影响。如果未启用增量编译,则它没有效果。

当使用 Java 命令行编译器时,即当自定义 java home 传递给 forkOptions.javaHome 或 javac 传递给 forkOptions.executable 时,此优化会自动禁用,因为编译器不是通过编译器 API 调用的。

使用 java 插件的默认值
true

Property<String> javaModuleMainClass

如果模块应该是可执行的,则设置 Java 模块的主类。

Property<String> javaModuleVersion

设置 Java 模块的版本。

boolean listFiles

指示是否记录要编译的文件。默认为 false

使用 java 插件的默认值
false

Property<Integer> release

为此编译任务配置 Java 语言版本 (--release 编译器标志)。

如果设置,它将优先于 AbstractCompile.getSourceCompatibility()AbstractCompile.getTargetCompatibility() 设置。

此选项仅由 JavaCompile 任务考虑。

FileCollection sourcepath

用于编译的源路径。

源路径指示源文件的位置,这些源文件在必要时可能会被编译。它实际上是类路径的补充,其中要编译的类以源文件形式存在。它指示正在编译的实际主要源。

对于使用依赖管理的现代构建,Java 编译器的源路径功能很少需要。

源路径的默认值为 null,表示一个源路径。请注意,这与 javac 的 -sourcepath 选项的默认值不同,javac 的默认值是使用 -classpath 指定的值。如果您希望使用任何源路径,则必须显式设置它。

使用 java 插件的默认值
null

boolean verbose

指示是否生成详细输出。默认为 false

使用 java 插件的默认值
false

boolean warnings

指示是否记录警告消息。默认为 true

使用 java 插件的默认值
true

方法详情

CompileOptions debug(Map<String, Object> debugArgs)

注意:此方法已弃用,将在 Gradle 的下一个主要版本中删除。

使用命名参数语法设置 DebugOptions 的便捷方法。调用此方法会将 debug 设置为 true

CompileOptions fork(Map<String, Object> forkArgs)

注意:此方法已弃用,将在 Gradle 的下一个主要版本中删除。

使用命名参数语法设置 ForkOptions 的便捷方法。调用此方法会将 fork 设置为 true