API 文档 | GroovyCompileOptions |
---|
传递给 Groovy 编译器的编译选项。
属性 | 描述 |
configurationScript | 一个 Groovy 脚本文件,用于配置编译器,从而对代码的编译方式进行广泛控制。 |
disabledGlobalASTTransformations | 不应加载到 Groovy 编译器中的全局 AST 转换集合。 |
encoding | 指定源文件编码。默认为 |
failOnError | 指定如果发生编译错误时编译任务是否应该失败。默认为 |
fileExtensions | 可接受的源文件扩展名列表。仅在使用 Groovy 1.7 或更高版本进行编译时生效。默认为 |
fork | 指定是否在单独的进程中运行 Groovy 编译器。默认为 |
forkOptions | 返回用于在单独进程中运行 Groovy 编译器的选项。这些选项仅在 |
javaAnnotationProcessing | Groovy 代码是否应该进行 Java 注解处理。 |
keepStubs | 指定在 Java/Groovy 联合编译期间生成的 Groovy 类对应的 Java 存根文件是否在编译完成后保留。对于联合编译调试很有用。默认为 |
listFiles | 指定是否打印将要编译的源文件。默认为 |
optimizationOptions | 返回 Groovy 编译器的优化选项。选项允许的值为 |
parameters | Groovy 编译器是否生成元数据,以便在 JDK 8 及更高版本上通过反射获取方法参数名称。 |
stubDir | 在 Java/Groovy 联合编译期间,Groovy 类对应的 Java 存根文件将存储的目录。默认为 |
verbose | 指定是否开启详细输出。默认为 |
方法 | 描述 |
fork(forkArgs) | 已废弃 使用命名参数语法设置 |
File
configurationScript
File
一个 Groovy 脚本文件,用于配置编译器,从而对代码的编译方式进行广泛控制。
该脚本作为 Groovy 代码执行,具有以下上下文
- 作为
configuration
变量可用的 CompilerConfiguration 实例。 - 已预导入 CompilerCustomizationBuilder 的所有静态成员。
这有助于实现以下模式
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
SetProperty
<String
>不应加载到 Groovy 编译器中的全局 AST 转换集合。
- 默认值
["groovy.grape.GrabAnnotationTransformation"]
可接受的源文件扩展名列表。仅在使用 Groovy 1.7 或更高版本进行编译时生效。默认为 ImmutableList.of("java", "groovy")
。
- 默认值
["java", "groovy"]
GroovyForkOptions
forkOptions
GroovyForkOptions
返回用于在单独进程中运行 Groovy 编译器的选项。这些选项仅在 fork
设置为 true
时生效。
Groovy 代码是否应该进行 Java 注解处理。
Groovy 代码的注解处理是通过让注解处理器访问 Groovy 编译器生成的 Java 存根文件来实现的,以便支持 Groovy 和 Java 源代码的联合编译。
当设置为 true
时,将无条件为所有 Groovy 源文件生成存根文件,并且 Java 注解处理器将在这些存根文件上执行。
当此选项设置为 false
(默认值)时,Groovy 代码将不会进行注解处理,但任何联合编译的 Java 代码会进行。如果 Java 编译选项中指定了编译器参数 "-proc:none"
,则此标志的值将被忽略。无论如何,都不会对 Java 或 Groovy 源文件执行注解处理。
- 默认值
false
指定在 Java/Groovy 联合编译期间生成的 Groovy 类对应的 Java 存根文件是否在编译完成后保留。对于联合编译调试很有用。默认为 false
。
- 默认值
false
返回 Groovy 编译器的优化选项。选项允许的值为 true
和 false
。仅在使用 Groovy 1.8 或更高版本进行编译时生效。
已知选项有
- indy
- 使用 invokedynamic 字节码指令。需要 JDK7 或更高版本以及 Groovy 2.0 或更高版本。默认禁用。
- int
- 优化基本类型(如整数)的操作。默认启用。
- all
- 启用或禁用所有优化。请注意,某些优化可能互斥。
- 默认值
[:]
GroovyCompileOptions
fork
(Map
<String
, Object
>
forkArgs)
GroovyCompileOptions
Map
<String
, Object
>注意:此方法已废弃,并将在 Gradle 的下一个主要版本中移除。
使用命名参数语法设置 GroovyForkOptions
的便捷方法。调用此方法将设置 fork
为 true
。