Как запустить Android Studio с более новым JRE или JDK на Mac? - PullRequest
1 голос
/ 03 ноября 2019

Я пытаюсь запустить Android Studio с JDK 13 только потому, что мне кажется, что он должен работать быстрее, чем JDK 8, который поставляется вместе с ним.

Согласно документации (который я нашел из ответа umang shukla ), мы можем заставить Android Studio использовать что-то другое, кроме встроенного JDK, установив STUDIO_JDK.

STUDIO_JDK

Устанавливает расположение JDK, с которым запускается Studio. Когда вы запускаете Android Studio, он проверяет переменные окружения STUDIO_JDK, JDK_HOME и JAVA_HOME в указанном порядке.

И я сделал это:

$ export STUDIO_JDK=`/usr/libexec/java_home -v 13`
$ echo $STUDIO_JDK
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home
$ open /Applications/Android Studio 3.5.app/
$ ps ax | grep Android
 1198   ??  R      1:07.86 /Applications/Android Studio 3.5.app/Contents/MacOS/studio
 1269   ??  S      0:00.02 /Applications/Android Studio 3.5.app/Contents/bin/fsnotifier
 1300 s000  R+     0:00.00 grep Android
$ ps eww 1198
 PID   TT  STAT      TIME COMMAND
 1198   ??  S      1:46.13 /Applications/Android Studio 3.5.app/Contents/MacOS/studio ANDROID_HOME=/Users/hborders/Library/Android/sdk TERM_PROGRAM=Apple_Terminal JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home TMPDIR=/var/folders/r6/qtc_vgrx1xb2gqsg08y0tl000000gp/T/ __CF_USER_TEXT_ENCODING=0x1F6:0x0:0x0 SHELL=/bin/bash _=/usr/bin/open HOME=/Users/hborders TERM_SESSION_ID=CA1F90D5-ABE9-427A-ACC5-EEE63AC66CAB SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.J9ll4GUN4M/Listeners Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.B3Rds8GPV9/Render TERM_PROGRAM_VERSION=421.2 SHLVL=1 PATH=/usr/local/bin:/Users/hborders/Library/Android/sdk/tools:/Users/hborders/Library/Android/sdk/platform-tools:/usr/local/opt/go/libexec/bin:/Users/hborders/go/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin DISPLAY=/private/tmp/com.apple.launchd.4O8kDH9XQS/org.macosforge.xquartz:0 TERM=xterm-256color LOGNAME=hborders XPC_SERVICE_NAME=com.google.android.studio.55476 LANG=en_US.UTF-8 GOROOT=/usr/local/opt/go/libexec GOPATH=/Users/hborders/go USER=hborders XPC_FLAGS=0x1 STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home PWD=/Users/hborders

Однако, когда я смотрю в диалоговом окне «Сбор информации об устранении неполадок в Android Studio», я получаю следующую информацию:

Build version: Android Studio 3.5.1 Build #AI-191.8026.42.35.5900203 September 25, 2019
Java version: 1.8.0_202-release-1483-b49-5587405x86_64
Operating System: Mac OS X (10.14.6, x86_64)
JVM version: OpenJDK 64-Bit Server VM JetBrains s.r.o

Я также попытался запустить Android Studio таким образом:

$ /Applications/Android Studio 3.5.app/Contents/MacOS/studio

И я получил то же самоерезультат. Я подал вопрос об Android Studio по этому поводу. Пожалуйста, отметьте это.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 03 ноября 2019

TLDR

Не пытайтесь сделать это. Android Studio 3.5.1 зависает при попытке сменить boot jdk. Я подал это в трекер проблем Android Studio. Пожалуйста, отметьте это.

Кто-то в частном порядке предложил:

cmd+shift+a -> switch boot jdk

Это определенно изменило поведение Android Studio. Однако Android Studio 3.5.1 зависла на заставке.

Android Studio splash screen hangs with different boot jdk

Это произошло, когда я попытался запустить его с Oracle JDK 13:

java version "13.0.1" 2019-10-15
Java(TM) SE Runtime Environment (build 13.0.1+9)
Java HotSpot(TM) 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)

или Oracle JDK 11:

java version "11.0.5" 2019-10-15 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.5+10-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode)

Чтобы устранить эту проблему, я обнаружил, что Android Studio сохраняет предпочтение boot jdk в ~/Library/Preferences/<PRODUCT><VERSION> на macOS (~/Library/Preferences/AndroidStudio3.5 в моем случае).

Затем я просто удалил файл studio.jdk, и Android Studio снова запустилась нормально.

0 голосов
/ 03 ноября 2019

Jetbrains содержит инструкции по выбору базовой среды выполнения.

На высоком уровне:

Установите Выберите плагин Runtime

Затем выполните «Find Action» в IDE и выберите «Choose Runtime»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...