有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java9发布标志在Gradle中似乎不起作用

Gradle正式引用了一句话,用JDK9+构建Java应用程序以在Java 8环境中运行的方法是使用--release 8标志:

https://docs.gradle.org/current/dsl/org.gradle.api.tasks.compile.CompileOptions.html

我试着这么做,但是编译器仍然会抛出一个错误:

module myapp.main {
^
  (use -source 9 or higher to enable modules)
1 error
:compileJava FAILED

根据该文档和许多stackoverflow文章(比如this),当目标为8时,编译器应该忽略模块文件,但事实并非如此。这是为什么

格雷德尔代码:

compileJava {
    dependsOn(':compileKotlin')
    options.compilerArgs.addAll(['--release', '8'])
    doFirst {
        println classpath.asPath
        options.compilerArgs += [
                '--module-path', classpath.asPath,
        ]
        classpath = files()
    }
}

共 (1) 个答案