我在jitpack中得到这个错误,我已经在互联网上尝试了一切。以下是我的错误

Failed to install the following Android SDK packages as some licences have not been accepted.
     platforms;android-26 Android SDK Platform 26
     build-tools;28.0.3 Android SDK Build-Tools 28.0.3
  To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.

当我运行。/sdkmanager——licenses

 All SDK package licenses accepted.======] 100% Computing updates...             

使用sudo和上面的命令得到

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:582)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
    ... 5 more

附加错误日志

File /opt/android-sdk-linux/.android/repositories.cfg could not be loaded.
Checking the license for package Android SDK Build-Tools 28.0.3 in /opt/android-sdk-linux/licenses
Warning: License for package Android SDK Build-Tools 28.0.3 not accepted.
Checking the license for package Android SDK Platform 26 in /opt/android-sdk-linux/licenses
Warning: License for package Android SDK Platform 26 not accepted.

我不知道为什么它检查许可证,当我的sdk位置是其他


当前回答

问题:SDK许可证不接受

第一步:打开SDK管理器

打开SDK管理器后,打开SDK工具选项卡,如下所示

步骤2:选中Show Package Details选项

它会列出SDK工具的所有版本

步骤3:安装所需SDK工具版本

从列表中查看正在抱怨的SDK工具的特定版本(对我来说,它是29.0.3,如上面的第一个截图所示),在接下来打开的对话框中接受协议,然后就完成了。

其他回答

在Ubuntu上,它仍然不能使用建议的答案。

这对我来说很管用:

CD全路径到bin文件夹,sdkmanager所在目录。

yes | ./sdkmanager --licenses --sdk_root="full-path-to-bin"

在选项——help中,它显示我们可以将公共参数传递给它,它最终接受所有许可:

Usage:
...
sdkmanager --licenses [<common args>]
...
Common Arguments:
    --sdk_root=<sdkRootPath>: Use the specified SDK root instead of the SDK containing this tool

当我试图在我的android设备上运行一个应用程序时,在一个不同的项目中,我使用一些旧版本的tomcat8,必须设置JAVA_OPTS变量和值,我遇到了同样的问题。因此我删除了JAVA_OPTS的这个系统变量,它的variable值设置为-Xms1024m(删除JAVA_OPTS系统变量,但是如果您需要恢复到使用可能需要它的旧项目,您也可以存储它以供将来使用)。

然后在SDK路径下运行SDK管理器bat文件: PS C:\Users[your_pc_username]\AppData\Local\Android\Sdk\tools\bin> .\sdkmanager.bat——license

接受所有许可(Y)。

如果您在使用Flutter时出现此错误,请在命令提示符上运行以下命令。

flutter doctor --android-licenses

如果运行上述命令后出现以下错误

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)

然后请执行以下步骤

开放android工作室 进入SDK管理器 单击SDK工具选项卡 安装Android SDK命令行工具 再运行一下颤振医生机器人执照

在Android Studio去:工具> SDK管理器> SDK工具

在右下方,选中“Show Package Details”框,下载你需要的sdk版本:

在我的情况下,我只是在一台新的笔记本电脑上安装了一个新版本的android studio,并克隆了旧的存储库 buildToolsVersion“30.0.2”在应用程序级别build.gradle。 我刚刚升级到30.0.3,这是android工作室自己推荐的,问题就消失了