GroovyCompileOptions

传递给 Groovy 编译器的编译选项。

属性

属性描述
configurationScript

一个 Groovy 脚本文件,用于配置编译器,允许对代码编译方式进行广泛控制。

disabledGlobalASTTransformations

不应加载到 Groovy 编译器的全局 AST 转换集合。

encoding

告知源编码。默认为 UTF-8

failOnError

告知编译任务是否应在发生编译错误时失败。默认为 true

fileExtensions

可接受的源文件扩展名列表。仅在针对 Groovy 1.7 或更高版本编译时生效。默认为 ImmutableList.of("java", "groovy")

fork

告知是否在单独的进程中运行 Groovy 编译器。默认为 true

forkOptions

返回在单独进程中运行 Groovy 编译器的选项。这些选项仅在 fork 设置为 true 时生效。

javaAnnotationProcessing

Groovy 代码是否应进行 Java 注解处理。

keepStubs

告知在 Java/Groovy 联合编译期间生成的 Groovy 类的 Java Stub 是否应在编译完成后保留。对于联合编译调试目的很有用。默认为 false

listFiles

告知是否打印要编译的源文件。默认为 false

optimizationOptions

返回 Groovy 编译器的优化选项。选项的允许值为 truefalse。仅在针对 Groovy 1.8 或更高版本编译时生效。

parameters

Groovy 编译器是否为 JDK 8 及更高版本上的方法参数名称反射生成元数据。

stubDir

Java/Groovy 联合编译期间,Groovy 类的 Java Stub 将存储在该目录中。默认为 null,在这种情况下将使用临时目录。

verbose

告知是否启用详细输出。默认为 false

方法

方法描述
fork(forkArgs)
已弃用

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

脚本块

无脚本块

属性详情

File configurationScript

一个 Groovy 脚本文件,用于配置编译器,允许对代码编译方式进行广泛控制。

该脚本作为 Groovy 代码执行,具有以下上下文

这方便了以下模式

withConfig(configuration) {
  // use compiler configuration DSL here
}

例如,要为所有 Groovy 类激活类型检查…

import groovy.transform.TypeChecked

withConfig(configuration) {
    ast(TypeChecked)
}

有关编译器配置 DSL 的更多信息,请参阅 Groovy 编译器自定义构建器文档

此功能仅在使用 Groovy 2.1 或更高版本编译时可用。

默认
null

SetProperty<String> disabledGlobalASTTransformations

不应加载到 Groovy 编译器的全局 AST 转换集合。

默认
["groovy.grape.GrabAnnotationTransformation"]

String encoding

告知源编码。默认为 UTF-8

默认
UTF-8

boolean failOnError

告知编译任务是否应在发生编译错误时失败。默认为 true

默认
true

List<String> fileExtensions

可接受的源文件扩展名列表。仅在针对 Groovy 1.7 或更高版本编译时生效。默认为 ImmutableList.of("java", "groovy")

默认
["java", "groovy"]

boolean fork

告知是否在单独的进程中运行 Groovy 编译器。默认为 true

默认
true

GroovyForkOptions forkOptions

返回在单独进程中运行 Groovy 编译器的选项。这些选项仅在 fork 设置为 true 时生效。

boolean javaAnnotationProcessing

Groovy 代码是否应进行 Java 注解处理。

Groovy 代码的注解处理通过让注解处理器访问 Groovy 编译器生成的 Java Stub 来工作,以便支持 Groovy 和 Java 源代码的联合编译。

当设置为 true 时,将为所有 Groovy 源代码无条件生成 Stub,并且 Java 注解处理器将在这些 Stub 上执行。

当此选项设置为 false(默认值)时,Groovy 代码将不进行注解处理,但任何联合编译的 Java 代码都将进行注解处理。如果编译器参数 "-proc:none" 作为 Java 编译选项的一部分指定,则将忽略此标志的值。无论如何,都不会对 Java 或 Groovy 源代码执行注解处理。

默认
false

boolean keepStubs

告知在 Java/Groovy 联合编译期间生成的 Groovy 类的 Java Stub 是否应在编译完成后保留。对于联合编译调试目的很有用。默认为 false

默认
false

boolean listFiles

告知是否打印要编译的源文件。默认为 false

默认
false

Map<String, Boolean> optimizationOptions

返回 Groovy 编译器的优化选项。选项的允许值为 truefalse。仅在针对 Groovy 1.8 或更高版本编译时生效。

已知选项包括

indy
使用 invokedynamic 字节码指令。需要 JDK7 或更高版本以及 Groovy 2.0 或更高版本。默认禁用。
int
优化原始类型(例如整数)的操作。默认启用。
all
启用或禁用所有优化。请注意,某些优化可能是互斥的。
默认
[:]

boolean parameters

Groovy 编译器是否为 JDK 8 及更高版本上的方法参数名称反射生成元数据。

默认
false

File stubDir

Java/Groovy 联合编译期间,Groovy 类的 Java Stub 将存储在该目录中。默认为 null,在这种情况下将使用临时目录。

默认
null

boolean verbose

告知是否启用详细输出。默认为 false

默认
false

方法详情

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

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