Исключение в потоке "main" java.lang.NoClassDefFoundError: javax / xml / bind / annotation / XmlSchema
в com.android.repository.api.SchemaModule $ SchemaModuleVersion. (SchemaModule.java:156)
на com.android.repository.api.SchemaModule. (SchemaModule.java:75)
в com.android.sdklib.repository.AndroidSdkHandler. (AndroidSdkHandler.java:81)
на com.android.sdklib.tool.sdkmanager.SdkManagerCli.main (SdkManagerCli.java:73)
на com.android.sdklib.tool.sdkmanager.SdkManagerCli.main (SdkManagerCli.java:48)
Вызывается: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
в java.base / jdk.internal.loader.BuiltinClassLoader.loadClass (BuiltinClassLoader.java:583)
в java.base / jdk.internal.loader.ClassLoaders $ AppClassLoader.loadClass (ClassLoaders.java:178)
в java.base / java.lang.ClassLoader.loadClass (ClassLoader.java:521)
... еще 5
Используя Java 12, я выполнил следующие шаги, чтобы обойти это предупреждение. Благодаря Ван Цянь.
Перейдите к пути, где установлен Android SDK, например, следующее.
%LOCALAPPDATA%\Android\Sdk\tools\bin
Редактировать sdkmanager.bat с помощью текстового редактора, такого как блокнот.
Найдите следующие строки приблизительно в строке 70.
@rem Execute sdkmanager
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %SDKMANAGER_OPTS% -classpath "%CLASSPATH%" com.android.sdklib.tool.sdkmanager.SdkManagerCli %CMD_LINE_ARGS%
Прямо над этими строками вставьте следующий код.
set CLASSPATH=%CLASSPATH%;%APP_HOME%\mylib\jaxb-api.jar
set CLASSPATH=%CLASSPATH%;%APP_HOME%\mylib\jaxb-core.jar
set CLASSPATH=%CLASSPATH%;%APP_HOME%\mylib\jaxb-impl.jar
set CLASSPATH=%CLASSPATH%;%APP_HOME%\mylib\jaxb-jxc.jar
set CLASSPATH=%CLASSPATH%;%APP_HOME%\mylib\jaxb-xjc.jar
set CLASSPATH=%CLASSPATH%;%APP_HOME%\mylib\activation.jar
Создайте новую папку mylib в папке инструментов вашей установки Android SDK.
%LOCALAPPDATA%\Android\Sdk\tools\mylib
Загрузите последнюю версию следующих 6 jar-файлов и поместите их в папку mylib.
Удалите версии в именах файлов, чтобы они соответствовали именам файлов, заданным в файле sdkmanager.bat. Теперь у вас должны быть следующие файлы.
%LOCALAPPDATA%\Android\Sdk\tools\mylib\activation.jar
%LOCALAPPDATA%\Android\Sdk\tools\mylib\jaxb-api.jar
%LOCALAPPDATA%\Android\Sdk\tools\mylib\jaxb-core.jar
%LOCALAPPDATA%\Android\Sdk\tools\mylib\jaxb-impl.jar
%LOCALAPPDATA%\Android\Sdk\tools\mylib\jaxb-jxc.jar
%LOCALAPPDATA%\Android\Sdk\tools\mylib\jaxb-xjc.jar
Все готово! Теперь запустите команду sdkmanager --update
%LOCALAPPDATA%\Android\sdk\tools\bin\sdkmanager --update