困扰好几天的问题
执行./gradlew assembleDevDebug时出现以下错误
java.lang.IllegalAccessError: superclass access check failed: class org.jetbrains.kotlin.kapt3.base.javac.KaptJavaCompiler (in unnamed module @0xb1e59) cannot access class com.sun.tools.javac.main.JavaCompiler (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.main to unnamed module @0xb1e59
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1027)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
at java.base/java.net.URLClassLoader.defineClass(URLClassLoader.java:524)
at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:427)
at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:421)
at java.
网上说的方法都试了 都没有解决
尝试了Android studio里面修改jdk版本,kotlin版本 gradle版本都没有解决
在终端输入java —version时发现jdk版本是22, AS里面指定gradle的jdk版本是11 两个版本不一致
原因是因为在/Users/username/Library/Java/JavaVirtualMachines目录下我下载了多个版本的jdk,第一个是jak22
解决办法:
删掉其他的版本 只留下jdk11
输入open -e .bash_profile打开.bash_profile文件
将里面的JAVA_HOME路径改为
JAVA_HOME=/Users/username/Library/Java/JavaVirtualMachines/corretto-11.0.23/Contents/Home
重新运行