如何将Android项目升级到Java 11

如何将Android项目升级到Java 11,android,android-studio,android-jetpack,android-jetpack-compose,Android,Android Studio,Android Jetpack,Android Jetpack Compose,我正在使用最新的Android Studio Arctic Fox 2020.03.01 Canary 8和AGP 7,我想将我的项目转换为使用Java 11。显然,仅执行以下操作不符合上所述的要求: 生成时出现以下错误: Execution failed for task ':app:compileDebugJavaWithJavac'. > Could not resolve all files for configuration ':app:androidJdkImage'.

我正在使用最新的Android Studio Arctic Fox 2020.03.01 Canary 8和AGP 7,我想将我的项目转换为使用Java 11。显然,仅执行以下操作不符合上所述的要求:

生成时出现以下错误:

Execution failed for task ':app:compileDebugJavaWithJavac'.
> Could not resolve all files for configuration ':app:androidJdkImage'.
   > Failed to transform core-for-system-modules.jar to match attributes {artifactType=_internal_android_jdk_image, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
      > Execution failed for JdkImageTransform: /Users/azfarsiddiqui/Library/Android/sdk/platforms/android-30/core-for-system-modules.jar.
         > jlink executable /Applications/Android Studio Preview.app/Contents/jre/jdk/Contents/Home/bin/jlink does not exist.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
为了简单起见,我在Jetpack Compose示例项目中尝试了以下方法:


有什么想法吗?谢谢大家

我想你们已经安装了Java 11或更高版本。以下步骤:

文件->项目结构->SDK位置->将JDK位置更改为Java 11 JDK文件夹

如果您正在使用Mac OS,请尝试在以下位置搜索该文件夹:

/Library/Java/JavaVirtualMachines/jdk-11.0.9.jdk/Contents/Home

确保在project Structure Java 11中使用Android Gredle插件7.0.0-alpha08&Gredle版本6.8.3

首先更新IDE


安装OpenJDK 11。使用brew时,其外观如下所示:

brew tap AdoptOpenJDK/openjdk
brew install adoptopenjdk11
在Android Studio中:
文件->项目结构->SDK位置
,设置JDK位置

您可以使用以下命令找到JDK位置

/usr/libexec/java_home -v 11

这对我来说是
/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home

最奇怪的事情发生在我身上,jdk位置并没有作为SDK位置部分的选项出现……我不知道它是否在最新版本的北极狐中被破坏。@nymeria在北极狐金丝雀14,此设置已移至
Settings |构建、执行、部署|构建工具| Gradle | Gradle JDK
ah谢谢@matthiuesnault!如果其他人最近升级到了最新版本,并且在一切正常的情况下遇到了关于Java11的错误,请运行
/gradlew--stop
并重新构建,它就会工作。
/usr/libexec/java_home -v 11