我在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位置是其他


当前回答

我在Android Studio上尝试了这个方法,结果很管用:

工具> SDK管理器(确保检查下面的显示包)

SDK平台>显示包> Android - 28

SDK工具>显示包> 28.0.3

其他回答

这对我来说很管用:

Yes | ./sdkmanager "platforms;android-28"

是| ./sdkmanager "build-tools;28.0.3"

是| ./sdkmanager——licenses

我刚刚做了文件->无效缓存和重新启动 然后安装缺少的包。 为我工作。

在Windows操作系统中,在cmd中进入sdkmanager路径目录

你可以在C:\Users\USER\AppData\Local\Android\Sdk\tools\bin目录下找到你的sdk管理器

然后执行如下命令:

sdkmanager——许可证

之后,它将要求接受许可协议几次,然后接受所有只需在CMD上键入y

在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

在Mac OS 10.15.1上,即使通过运行sdkmanager—licenses接受了所有许可证,我也得到了相同的错误。Bash_profile到下面

export ANDROID_HOME=/Users/your_username/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
export PATH=$PATH:~/Library/Android/sdk/platform-tools

并重新加载~/.bash_profile

source ~/.bash_profile