开放Java应用程序在OS X Mavericks上无声地失败

Sve*_*ken 17 java intellij-idea android-studio osx-mavericks

在Mavericks更新后打开Intelli J或Android Studio时没有任何反应,无声地失败.

Java和javac都可以在命令行中运行.

从命令行打开应用程序会出现此错误: LSOpenURLsWithRole() failed with error -10658 for the file /Applications/Android Studio.app.

idea_appLauncher从命令行打开Intelli J (/Applications/...app/Contents/MacOS/idea_appLauncher)给出了更多信息:

someuser @ machine:〜$/Applications/IntelliJ\IDEA\12\CE.app/Contents/MacOS/idea_appLauncher; 出口; 没有Java运行时,请求安装.登出

[流程完成]

Obviosuly Mavericks并没有接​​受我的Java安装,即使它是PATH的一部分并且设置了JAVA_HOME并且它没有给出"请安装Java运行时"提示.

jua*_*cks 14

在我的情况下,我看到了类似的错误,但有不同的错误代码:

LSOpenURLsWithRole() failed for the application /Applications/IntelliJ IDEA 13 CE.app with error -10810.
Run Code Online (Sandbox Code Playgroud)

这为我工作:只需编辑文件/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


Sve*_*ken 9

解:

手动下载并安装Java Runtime.

您还需要从"设置/安全和隐私"中的所有来源启用应用程序.


Sha*_*awn 5

这是因为android studio/intellij仍在使用旧的"JavaLaunching"框架,该框架已被Java 7弃用.要么安装了生命周期版本的JDK 6,要么请求Android Studio升级以使用oracle的JDK appbundle.

我真的很讨厌安装JAVA 6,所以我的机器上会有两个JDK.所以我攻击了Android工作室文件,以便可以从Dock中启动它们:

  1. 将studio(in /Applications/Android Studio.app/Contents/MacOS)文件从JavaLauncher存根更改为shell脚本,这是它的样子:
#!/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它.

  1. 删除/Applications/Android Studio.app/Contents目录中Info.plist文件中的java部分.否则,Apple仍会要求您安装JDK 6:编辑文件并删除整个java部分.差异看起来像:http://pastebin.com/QS8M45cr