如何将编译器参数传递给 java Compiler with kotlin dsl Gradle
How to pass compiler arguments to java Compiler with kotlin dsl Gradle
我想为 gradle 构建任务向 java 编译器添加参数 --add-exports java.rmi/sun.rmi.server=ALL-UNNAMED
。我正在使用 gradle kotlin dsl。
下面是更新后的 JavaCompiler 任务。
tasks.withType<JavaCompile> {
val compilerArgs = options.compilerArgs
compilerArgs.add("--add-exports java.rmi/sun.rmi.server=ALL-UNNAMED ")
}
当我 运行 gradle compileJava
任务时,我遇到以下错误。
- What went wrong:
Execution failed for task ':compileJava'.
error: invalid flag: --add-exports java.rmi/sun.rmi.server=ALL-UNNAMED
- 尝试:
运行 使用 --stacktrace 选项获取堆栈跟踪。 运行 使用 --info 或 --debug 选项以获得更多日志输出。 运行 使用 --scan 以获得完整的见解。
我该如何解决这个问题?
根据 javadoc、options.compilerArgs
returns List<String>
。所以你可以这样写:
tasks.withType<JavaCompile> {
val compilerArgs = options.compilerArgs
compilerArgs.addAll(listOf("--add-exports", "java.rmi/sun.rmi.server=ALL-UNNAMED"))
}
还要确保您有 Java 9+。
我想为 gradle 构建任务向 java 编译器添加参数 --add-exports java.rmi/sun.rmi.server=ALL-UNNAMED
。我正在使用 gradle kotlin dsl。
下面是更新后的 JavaCompiler 任务。
tasks.withType<JavaCompile> {
val compilerArgs = options.compilerArgs
compilerArgs.add("--add-exports java.rmi/sun.rmi.server=ALL-UNNAMED ")
}
当我 运行 gradle compileJava
任务时,我遇到以下错误。
- What went wrong: Execution failed for task ':compileJava'.
error: invalid flag: --add-exports java.rmi/sun.rmi.server=ALL-UNNAMED
- 尝试: 运行 使用 --stacktrace 选项获取堆栈跟踪。 运行 使用 --info 或 --debug 选项以获得更多日志输出。 运行 使用 --scan 以获得完整的见解。
我该如何解决这个问题?
根据 javadoc、options.compilerArgs
returns List<String>
。所以你可以这样写:
tasks.withType<JavaCompile> {
val compilerArgs = options.compilerArgs
compilerArgs.addAll(listOf("--add-exports", "java.rmi/sun.rmi.server=ALL-UNNAMED"))
}
还要确保您有 Java 9+。