当前位置: 首页 > 知识库问答 >
问题:

错误:java:javactask:源版本1.8需要目标版本1.8

柴岳
2023-03-14

我正在使用intellij创建sbt跨编译平台项目,使用以下平台JVM、JS、NativeWin、NativeUbuntu、Android和共享scala代码。我的项目需要Java8,但似乎Android不适合Java8版本,因为我在sbt文件中为Android模块指定了1.7版本,如下所示:

Android模块build.sbt文件

val commonSettings = Seq(
  version        := "0.0.1",
  scalaVersion   := "2.11.12",
  scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature", "-target:jvm-1.7"),
  javacOptions  ++= Seq("-source", "1.7", "-target", "1.7"),
  exportJars     := true
)

lazy val android = (project in file("."))
  .enablePlugins(AndroidLib)
  .settings(commonSettings: _*)
  .settings(
    name := "sgl-android",
    platformTarget := "android-28",
    useProguard := true
  ) 

项目设置:

共有1个答案

仉昂熙
2023-03-14

Android支持java8,但是您的代码和依赖库不应该调用methodhandle.invoke。请参阅https://developer.android.com/studio/write/java8-support。标准scala库2.11、2.12、2.13.0-M5使用这种方法,因此编译不成功。

 类似资料:
  • 问题内容: 注意:这似乎是“ javac”程序中的限制。 我有需要为Java 5 JVM构建的Java 6代码。我以前使用javac ant目标(同时使用JDK编译器和ecj)的工作使我相信,这仅仅是为javac设置源和目标的问题。因此,此pom.xml片段: 在具有Maven支持的Eclipse 3.7中可以正常工作。不幸的是,直接从命令行运行Maven给了我 与产生的相同。澄清一下,这是Ubu

  • 在使用IntelliJ IDEA运行JUnit测试时,我得到 我该如何纠正这一点呢? 使用SDK 1.7 模块语言级别为1.7 Maven build工作良好。(这就是为什么我在IDEA configuration issue中相信这一点)

  • 所以我更改了我的依赖项,如下所示: 但我不知道从哪里可以把1.6级改成1.8级... 当我编译应用程序时,我遇到了这个错误: 提前致谢:)

  • 我试图在OPENSHIFT上部署应用程序,但maven无法编译它,出现错误: 目标版本1.8无效 java版本“1.8.0_05” Java(TM)SE运行时环境(build 1.8.0_05-B13) Java HotSpot(TM)64位服务器VM(build 25.5-B02,混合模式)

  • 我们刚刚将项目从升级到。在我的机器中构建项目时,我遇到以下错误。 [错误]无法执行目标org.apache.maven.plugins:maven-compiler-plugin:3.3:在项目上编译(default-compile)异常:编译时出现致命错误:目标版本无效:1.8->[帮助1] 下面是所使用的maven编译器插件 我看了很多帖子,其中大多数都与没有为java_home配置正确的版本

  • 如有任何帮助,我们将不胜感激。