Принятие лицензий Android SDK на MacOS с OpenJDK 11 - PullRequest
0 голосов
/ 19 сентября 2019

Я только что установил Android Studio и импортировал проект.Однако я не могу построить проект, потому что, по-видимому, не доказал свою преданность Всемогущему, Google принял соответствующие лицензии.

> Failed to install the following Android SDK packages as some licences have not been accepted.
     build-tools;28.0.3 Android SDK Build-Tools 28.0.3
     platforms;android-28 Android SDK Platform 28

После некоторого молитвызная, что выполняет поиск в Google, я обнаружил, что сценарий оболочки sdkmanager был установлен в несвязанном месте и должен быть запущен для принятия лицензий.Преодолев первоначальную проблему проверка веры , я запустил сценарий и обнаружил следующую ошибку:

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:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 5 mor

В сети я нашел несколько человек с такой же проблемой.

Самое популярное решение из этого вопроса предлагает найти определенную строку в сценарии оболочки sdkmanager и добавить -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee.Это приводит к следующей ошибке:

Error occurred during initialization of boot layer
java.lang.module.FindException: Module java.se.ee not found

После дополнительных поисков и чтения других ответов выясняется, что указанное выше изменение не работает для более поздних версий Java.Другой ответ, здесь , предлагает следующее.

  1. Вручную измените сценарий sdkmanager
  2. Переход на более старую версию Java, совместимую с модификациями, сделанными вшаг 1
  3. Запустите сценарий оболочки и примите лицензии
  4. Обновитесь до текущей версии Java
  5. Наконец скомпилируйте проект

Thisкажется немного излишним просто для того, чтобы иметь возможность скомпилировать приложение Android на моем Mac, но я готов попробовать.Однако я не могу загрузить Java 8 по предоставленной ссылке , так как для этого требуется учетная запись оракула, и я не могу ее создать ...

Кто-нибудь знает менее сложный способ установкии впервые скомпилировать проект Android Studio на Mac с Java 11 в 2019 году?

1 Ответ

2 голосов
/ 20 сентября 2019

Я знаю, что это не идеальный ответ, но столкнувшись с этим буквально и сегодня, единственный способ, который я нашел, - понизить OpenJDK до 8.

Используя доморощенный Бочка от accepttopenjdk сделала это довольно просто, а sdkmanager теперь просто работает (tm)

...