尝试接受Android Studio许可证时,我不断收到此错误"java.lang.NoClassDefFoundError"



我正在尝试构建我的第一个android工作室项目。我一直收到这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema

当我试图构建最简单的";MyFirstApp";项目,我没有得到这个错误。

我已尝试从终端运行sdkmanager

cd /Users/username/Library/Android/sdk/tools/bin
./sdkmanager --licenses

以及通过物理地转到sdkmager目录并双击sdkmanager

我在这两个问题上都犯了同样的错误。我还更新了Java。那么,为什么我会出现这个错误呢?我该如何修复它?

完整错误如下:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 5 more

此外,只要在这里添加它,如果它是相关的,这是我在运行java --version:时得到的输出

java 13.0.2 2020-01-14
Java(TM) SE Runtime Environment (build 13.0.2+8)
Java HotSpot(TM) 64-Bit Server VM (build 13.0.2+8, mixed mode, sharing)

我检查了Android Studio内部的渐变同步,发现那里还有另一个错误:

ERROR: Module 'app': platform 'android-29' not found.

这可能是因为我下载了最新的安卓版本,即安卓R(也就是安卓工作室中的安卓30(,而这个项目可能预计版本为29(安卓Q(。所以,一旦我下载并安装了Android 29,通过转到工具->SDK管理器,并重新启动Android Studio,它运行良好,不会出现任何错误。

sdkmager需要JDK 8才能正常工作,尤其是在运行--licenses选项时。它不需要是oracle JDK,AdoptOpenJDK对我来说很好

相关内容

最新更新