相关疑难解决方法(0)

错误:Jack需要支持java 8语言功能

当我尝试通过添加获得android studio 2.1和android N SDK后更新我的android项目以使用Java 8

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}
Run Code Online (Sandbox Code Playgroud)

我有这个错误

错误:Jack需要支持java 8语言功能.启用Jack或删除sourceCompatibility JavaVersion.VERSION_1_8.

我该怎么办?

android android-studio android-gradle-plugin jack-compiler

136
推荐指数
1
解决办法
9万
查看次数

无法使用 openjdk10 编译,但可以使用 openjdk11 和 openjdk9

问题

\n

我需要使用 JDK10 来编译我必须处理的遗留项目。我知道这是一个短期支持版本,其生命周期已经结束。但在项目更新到较新的 Java 版本之前,我需要能够在我的开发计算机上构建并运行它。

\n
\n

注意:该项目确实在其 CI 管道上正确构建并在生产环境中运行。这个问题与项目无关,而是与我的机器有关。

\n
\n

我遇到的问题是我无法使用 JDK10 编译任何 java 代码,但其他 JDK(例如 8、9、11、12 和 17)可以工作

\n

重现问题

\n

为了展示我的问题,我正在尝试编译一个简单的 hello world 程序Test.java

\n
public class Test {\n    public static void main(String[] args) {\n        System.out.println("Hello, world!");\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

我使用的是OpenJDK中的预构建 JDK ,但我也尝试过使用Zulu发行版重现此问题。

\n

我可以通过以下方式一致地重现该问题:

\n
$ wget https://download.java.net/java/GA/jdk10/10.0.2/19aef61b38124481863b1413dce1855f/13/openjdk-10.0.2_linux-x64_bin.tar.gz\n...\n2022-10-24 14:10:31 (11,1 MB/s) - \xe2\x80\x98openjdk-10.0.2_linux-x64_bin.tar.gz\xe2\x80\x99 saved [204892533/204892533]\n$ tar -xzf openjdk-10.0.2_linux-x64_bin.tar.gz\n$ jdk-10.0.2/bin/java -version \nopenjdk version "10.0.2" …
Run Code Online (Sandbox Code Playgroud)

java

6
推荐指数
1
解决办法
250
查看次数