Подтвердить что ты не робот

Открытые Java-приложения терпят неудачу в OS X Mavericks

При открытии Intelli J или Android Studio после обновления Mavericks ничего не происходит, происходит сбой.

Java и javac работают из командной строки.

Открытие приложений из командной строки дает эту ошибку: LSOpenURLsWithRole() failed with error -10658 for the file /Applications/Android Studio.app.

Открытие Intelli J idea_appLauncher (/Applications/...app/Contents/MacOS/idea_appLauncher) из командной строки предоставило дополнительную информацию:

someuser @machine: ~ $/Приложения/IntelliJ\IDEA\12 \ CE.app/Contents/MacOS/idea_appLauncher; Выход; Нет времени выполнения Java настоящее, запрашивая установку. выход из системы

[Процесс завершен]

Obviosuly Mavericks не собирает мою установку Java, даже если она включена в состав PATH и JAVA_HOME, и она не дает приглашение "Пожалуйста, установите Java runtime".

4b9b3361

Ответ 1

Решение:

Загрузите и установите Java Runtime вручную.

Вам также необходимо включить приложение из всех источников из настроек/Безопасность и конфиденциальность.

Ответ 2

В моем случае я увидел аналогичную ошибку, но с другим кодом ошибки:

LSOpenURLsWithRole() failed for the application /Applications/IntelliJ IDEA 13 CE.app with error -10810.

Это сработало для меня: просто отредактируйте файл /Applications/IntelliJ\ IDEA\ 13\ CE.app/Contents/Info.plist и измените поле ключа JVMVersion с 1.6* на 1.7*.

Мой стек:

  • IntelliJ IDEA 13 CE
  • версия java "1.7.0_51"
  • OS X 10.9.1

Ответ 3

Это связано с тем, что андроид studio/intellij по-прежнему использует старую среду JavaLaunching, которая устарела с Java 7. Либо вы устанавливаете версию JDK 6 End-Of-Life, либо запрашиваете Android Studio для обновления, чтобы использовать oracle Приложение JDK.

Мне очень неинтересно устанавливать JAVA 6, поэтому у меня будет два JDK на моей машине. поэтому я взломал файлы студии Android так, что их можно запустить из док-станции:

  • Измените студию (в /Applications/Android Studio.app/Contents/MacOS) файл с оболочки JavaLauncher на оболочку script, вот как это выглядит:
#!/bin/bash
export JAVA_HOME=`/usr/libexec/java_home`
echo JAVA_HOME=$JAVA_HOME
export APP_PACKAGE='/Applications/Android Studio.app'
exec $JAVA_HOME/bin/java -cp $JAVA_HOME/lib/tools.jar:"$APP_PACKAGE"/lib/bootstrap.jar:"$APP_PACKAGE"/lib/extensions.jar:"$APP_PACKAGE"/lib/util.jar:"$APP_PACKAGE"/lib/jdom.jar:"$APP_PACKAGE"/lib/log4j.jar:"$APP_PACKAGE"/lib/trove4j.jar:"$APP_PACKAGE"/lib/jna.jar -Didea.platform.prefix=AndroidStudio -Didea.paths.selector=AndroidStudioPreview -Dfile.encoding=UTF-8 -ea -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+UseCodeCacheFlushing -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:"$APP_PACKAGE"/lib/boot.jar -XX:MaxPermSize=256m -Xdock:icon="$APP_PACKAGE"/Contents/Resources/AndroidStudio.icns com.intellij.idea.Main

обязательно chmod +x ./studio.

  • Удалите раздел java в файле Info.plist в каталоге /Applications/Android Studio.app/Contents. В противном случае Apple все равно попросит вас установить JDK 6: отредактируйте файл и удалите весь раздел java. Разница будет выглядеть так: http://pastebin.com/QS8M45cr

Ответ 4

У меня был java 1.7, но ни один из выше не работал или не соответствовал моему журналу проблем. Запуск Android Studio без проблем. Я вернулся к java 1.6, такое же поведение, и оба имеют одинаковый журнал ошибок (см. Ниже).

Мой журнал ошибок показал:

android studio taskgated failed to get signing info for  (cannot make code: invalid signature (code or signature have been modified))

Большинство ответов на StackOverflow на этот конкретный журнал ошибок - это "Разрешить приложения, загруженные из любого места" в разделе "Безопасность и конфиденциальность".

Затем я увидел, что сделал @jmcejuela, и это сработало довольно хорошо, и я отредактировал

/Applications/Android\ Studio.app/Contents/Info.plist 

и изменил

1.6*

to

1.7*

Моя среда:

  • Android Studio 0.4.2
  • версия java "1.7.0_45"
  • Версия OSX 10.8.5

Ответ 5

В моем случае я видел параметр "Allow it anyway" для Android Studio под Settings->Security&Privacy->General Tab. Когда я нажимаю на него, он удаляет ограничение для Android Studio.