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

Недавно я был в одном и том же обстоятельстве. вам в основном нужно обратить внимание на «края» приложения. INI-файлы, файлы ввода-вывода, файлы журналов и т. Д. Выигрывают вызовы API из работы delphi, поскольку они теперь подключили вызовы API Unicode. проверьте каждый сторонний компонент, чтобы убедиться, что они, по крайней мере, готовы к Delphi 2009 ... еще лучше 2010. Даже мое использование баз данных просто не было проблемой ... почти все сразу сработало. это просто не было большой проблемой. все, что полагается на размер персонажа, должно быть пересмотрено.

действительно самый большой интерес вызывает 2007_or_earlier -> 2009_or_later.

есть много дискуссий / записей в блоге об этом , вы могли читать, читать, читать ... или вы могли бы начать и amp; посмотрим, что произойдет. (я сделал некоторые из них). Я уверен, что есть проблемы с переполнением стека, которые обсуждают ваш вопрос. я не претендую на подробное описание того, что может случиться.

это просто не так страшно, как кажется.

17
задан Sveinung Kval Bakken 25 October 2013 в 16:07
поделиться

1 ответ

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

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

  1. Измените файл студии (в /Applications/Android Studio.app/Contents/MacOS) из заглушки JavaLauncher на сценарий оболочки, вот как это выглядит :
#!/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. Удалите раздел java в файле Info.plist в каталоге /Applications/Android Studio.app/Contents. В противном случае Apple все равно попросит вас установить JDK 6: отредактируйте файл и удалите весь раздел Java. Различия будут выглядеть следующим образом: http://pastebin.com/QS8M45cr
5
ответ дан Shawn 25 October 2013 в 16:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: