【问题标题】:Scala build error on Java 11 using intellijideaScala 使用 intellij idea 在 Java 11 上构建错误
【发布时间】:2019-07-19 13:58:42
【问题描述】:

当我从 IntellijIdea 构建项目时,出现以下错误

Error:scalac: 'jvm-11' is not a valid choice for '-target'
Error:scalac: bad option: '-target:jvm-11'

我正在使用 gradle 来构建我的项目。我的项目使用的是 java 11 和 scala 2.12.8。

有人可以帮我解决这个错误吗?

【问题讨论】:

标签: java scala gradle java-11


【解决方案1】:

Scala 2.12 不支持将 JVM 11 作为目标。您需要将此添加到您的 gradle 构建文件中:

tasks.withType<ScalaCompile> {
    targetCompatibility = "1.8"
}

对于 Scala 2.13,这个问题的修复是:

tasks.withType<ScalaCompile>() {
    targetCompatibility = ""
    scalaCompileOptions.additionalParameters = listOf("-target:11")
}

【讨论】:

    【解决方案2】:

    就我而言,我只是在 Idea 更新后错误配置了 Scala。

    Scala 12 实际上可以兼容 Java 11。最好检查兼容性table

    我必须从 Project Structure 中删除我以前的 Scala 库,然后按照 this 答案中的说明重新添加它。

    【讨论】:

      【解决方案3】:

      这是由于 IntelliJ(或 IntelliJ 的 Scala 插件)中的错误:

      https://youtrack.jetbrains.com/issue/SCL-18813

      我在那里发布了一个解决方法,其灵感来自 IvanoBulo 上面的回答。

      【讨论】:

      • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
      猜你喜欢
      • 2019-08-11
      • 1970-01-01
      • 1970-01-01
      • 2019-06-05
      • 2016-06-19
      • 2011-09-27
      • 2016-03-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多