NetBeans Clean & Build Ошибка Android: Java.Lang X500Principal access

Мне интересно, может ли кто-нибудь помочь в этом. Ошибка возникает при очистке и сборке простейших проектов. (Смотри ниже)

Действия, ведущие к ошибке:

Как новый сотрудник и, следовательно, новый пользователь на машине не старше 4 месяцев, я начал с открытия NetBeans 8.2 с установленными для меня NetBeans и Android Studio (для SDK) за неделю до этого.

Однако плагин для Android не был установлен, поэтому я реализовал центр обновлений nbandroid для установки плагина. Затем я подключил SDK, найденный в папке users\user.user1\AppData\local\android, к NetBeans.

Чтобы запустить правильную версию Android (4.2.2) определенного проекта, я сначала установил версии 4 и выше в Android Studio/SDK Manager, а затем выбрал версию 4.2.2 в NetBeans.

Я продолжил копирование проекта Android с общего файлового сервера на свой локальный компьютер, прежде чем открывать локальную версию в NetBeans.

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

Current build type is different than previous build: forced apkbuilder run.
Creating Test-debug-unaligned.apk and signing it with a debug key...
C:\AndroidSDK\tools\ant\build.xml:958: The following error occurred while executing this line:
C:\AndroidSDK\tools\ant\build.xml:969: The following error occurred while executing this line:
C:\AndroidSDK\tools\ant\build.xml:312: 
java.lang.InternalError: Could not obtain X500Principal access
                at sun.security.x509.X500Name.<clinit>(X500Name.java:1399)
                at com.android.sdklib.internal.build.SignedJarBuilder.writeSignatureBlock(SignedJarBuilder.java:384)
                at com.android.sdklib.internal.build.SignedJarBuilder.close(SignedJarBuilder.java:273)
                at com.android.sdklib.build.ApkBuilder.sealApk(ApkBuilder.java:795)
                at com.android.ant.ApkBuilderTask.execute(ApkBuilderTask.java:371)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:396)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
                at com.android.ant.IfElseTask.execute(IfElseTask.java:124)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
                at com.android.ant.IfElseTask.execute(IfElseTask.java:124)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:396)
                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
                at sun.reflect.GeneratedMethodAccessor147.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
                at org.apache.tools.ant.Task.perform(Task.java:348)
                at org.apache.tools.ant.Target.execute(Target.java:435)
                at org.apache.tools.ant.Target.performTasks(Target.java:456)
                at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)
                at org.apache.tools.ant.Project.executeTarget(Project.java:1376)
                at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
                at org.apache.tools.ant.Project.executeTargets(Project.java:1260)
                at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:286)
                at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:555)
                at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)
Caused by: java.security.PrivilegedActionException: java.lang.NoSuchMethodException: javax.security.auth.x500.X500Principal.<init>(sun.security.x509.X500Name)
                at java.security.AccessController.doPrivileged(Native Method)
                at sun.security.x509.X500Name.<clinit>(X500Name.java:1392)
                ... 63 more
Caused by: java.lang.NoSuchMethodException: javax.security.auth.x500.X500Principal.<init>(sun.security.x509.X500Name)
                at java.lang.Class.getConstructor0(Class.java:3082)
                at java.lang.Class.getDeclaredConstructor(Class.java:2178)
                at sun.security.x509.X500Name$1.run(X500Name.java:1384)
                at sun.security.x509.X500Name$1.run(X500Name.java:1380)

Это действительно странно, потому что у моего коллеги нет проблем с компиляцией на его ПК (почти идентичный ПК, за исключением NetBeans 8.1 и Jdk8u91 вместо моей последней Java)

Решения, с которыми уже консультировались:

  • Изменение местоположения Android SDK, JDK и всех соответствующих приложений,
  • Вставка переменных среды, таких как ANT_HOME, JAVA_HOME и ANDROID_HOME,
  • Установка всех плагинов и версий андроида,

  • Вставка пути переменной среды к Jdk,

  • Установка исключительно версии Android 4.2.2 в Android Studio,

  • Полное удаление и переустановка NetBeans, Android Studio, JDK, Android SDK от имени администратора ПК,

  • Используя моего коллегу в качестве пользователя,

  • Очистка и создание простых стартовых проектов,

  • Настройка входных данных NetBeans, идентичных входным данным моих коллег,

  • Изучил глубины Google

Я проверил разрешения и немного изучил основы и инструменты Java, но не уверен на 100%, что я с этим делаю.

Думал, что посоветуюсь со стеком, прежде чем пытаться что-то еще. Любая помощь приветствуется.


person Zeenglishking    schedule 14.10.2016    source источник
comment
ты решил свою проблему?   -  person Randyka Yudhistira    schedule 27.10.2016
comment
Не боюсь. Думал вместо этого попробовать Eclipse, но платформа, отличная от моих коллег, не идеальна. Что ты думаешь? @RandykaYudhistira   -  person Zeenglishking    schedule 27.10.2016
comment
у меня такая же проблема в netbeans 8.2, но не в netbeans 8.1   -  person Randyka Yudhistira    schedule 28.10.2016


Ответы (2)


Подключаемый модуль nbandroid несовместим с NetBeans 8.2 из-за того, что в вики указано, что он предназначен для NetBeans 8.1 nbandroid wiki, а также была зарегистрирована ошибка по той же проблеме на сайте плагина nbandroid здесь.

Как только они обновят подключаемый модуль для работы с более новой версией NetBeans, я ожидаю, что эта проблема будет решена.

person Jonjon    schedule 25.11.2016
comment
Интересно .. Итак, вы знаете другой плагин для использования? @jonjon - person Zeenglishking; 25.11.2016
comment
Извините, я бы порекомендовал перенести ваше приложение в Android Studio (с Gradle Build), так как оно лучше поддерживается. - person Jonjon; 25.11.2016
comment
Однако, чтобы быть более конструктивным, это выглядит как проблема в плагине. Поскольку это открытый исходный код, было бы лучше найти кого-то с навыками, чтобы найти проблему и исправить ее на благо всех. (Я не уверен, что мои навыки соответствуют задаче, извините) - person Jonjon; 25.11.2016

Соглашаясь с @RandykaYudhistira в комментариях, было принято решение перейти на версию 8.1, и это полностью решило проблему, позволив мне очищать и создавать новые и локальные приложения.

Успех.

Однако это не решает проблему с NetBeans 8.2. Было бы интересно узнать, есть ли решение этой проблемы и почему у таких установок, как у меня и у других, возникает эта проблема.

Приветствуются любые другие решения - решать, а не «обходить», как здесь.

person Zeenglishking    schedule 28.10.2016