我在从 VS Code 运行 Flutter 应用程序时遇到问题,
FAILURE: Build failed with an exception.
What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
java.lang.IllegalAccessError: class org.gradle.internal.compiler.java.ClassNameCollector (in unnamed module @0x3d67da21) cannot access class com.sun.tools.javac.code.Symbol$TypeSymbol (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.code to unnamed module @0x3d67da21
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.
Get more help at https://help.gradle.org
BUILD FAILED in 3s
Exception: Gradle task assembleDebug failed with exit code 1
flutter doctor
说了什么:
[✓] Flutter (Channel stable, 2.2.3, on macOS 11.4 20F71 darwin-arm, locale
en-RS)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[!] Android Studio
✗ **Unable to find bundled Java version.**
[✓] Connected device (2 available)
答案 0 :(得分:0)
我认为您应该在 Android Studio 中指定 Java SDK 的路径,您可以通过执行以下操作进行设置:
<块引用>一般来说,它是在“项目结构”对话框中设置的。
转到文件 > 项目结构 > SDK 位置。第三个字段是“JDK 位置”,您可以在其中进行设置。这将为当前设置 项目。
答案 1 :(得分:0)
我通过创建符号链接解决了这个问题:
S
不是最优雅的解决方案,但有效。问题是系统找到了两个java版本,要么是android license不接受,要么是找不到捆绑版本。因此,我删除了链接并添加了另一个链接。终于成功了
来源:https://github.com/flutter/flutter/issues/27136#issuecomment-888915746