Android Studio не удалось найти действительный Jvm (связанный с MAC OS)


Ответы:


355

Откройте пакет приложения для Android Studio в Finder и отредактируйте файл Info.plist . Измените ключ JVMversion. Поставь 1.6+ вместо 1.6 *. Это сработало для меня!

Ура!

Отредактировано:

Хотя это было необходимо в более старых версиях Android Studio, это больше не рекомендуется. Смотрите официальное заявление

«Обратите внимание: не редактируйте Info.plist для выбора другой версии. Это нарушит не только подпись приложения, но и будущие обновления патчей для вашей установки».

Антонио Хосе ответ правильный.

Спасибо aried3r!


15
я изменил 1,6 * до 1,8 * на моем Mac
— Titi Wangsa bin Damhore

5
Для завершения: это должно быть сделано в файле Info.plist
— Henridv

7
Хотя это было необходимо в более старых версиях Android Studio, это больше не рекомендуется. См. Официальное заявление: «Обратите внимание: не редактируйте Info.plist для выбора другой версии. Это нарушит не только подпись приложения, но и будущие обновления патча для вашей установки». Антонио Хосе ответ правильный.
— aried3r

6
Согласно ответу Алонсо и Шейна, официальный пакет от Apple сделал свое дело. Нет необходимости возиться!
— Джастин Лоуренс,

6
Wow 1.6+ работал на меня .. Я просто скачаю новое приложение, как только они обновятся!
— Нил Джапфа

174

Просто установите этого парня здесь

http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US

и тебе должно быть хорошо.


3
@ MickyRich89 Попробуйте это: support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US
— zhengyue

4
Я не понимаю, как это не принятый или правильный ответ. Это в основном решает проблему и удерживает вас от редактирования любых файлов. По крайней мере, с моей проблемой невозможности запустить Android Studio из-за отсутствия Javas в Yosemite. То же исправление для Intellij 14.
— Энди

8
Просто скачайте и установите последнюю версию JVM из Oracle сначала здесь: java.com/en/download/index.jsp А затем загрузите и запустите pkg по ссылке выше, тогда вы будете на Java 8 и у вас все еще будет работать правильный запуск
— Эдвард Тан

7
Кроме того, чтобы подвести итог, что работало для меня на Mac OSX 10.10: 1) установил Java 8u25 с java.com/en/download 2) установил Java, который Алонсо сказал в своей ссылке support.apple.com/kb/DL1572?viewlocale = en_US & locale = en_US
— Кто-то где-то

2
Этот ответ является официально рекомендуемым способом (запустить Android Studio с JRE 6 и скомпилировать приложения с JDK 7 или 8): tools.android.com/tech-docs/configuration/osx-jdk
— Steffen

140

[Update]
Это исправлено в Android Studio 1.1 https://issuetracker.google.com/issues/37015035

В следующей версии Android Studio, если java 6 не найден, но найден 7 (или выше), он будет использовать его вместо этого. Мы по-прежнему рекомендуем запускать студию с Java 6 из-за улучшенного рендеринга шрифтов, но никакого обходного пути не требуется, если, например, найдена только Java 8.

[Конец обновления]

Из Android Studio 1.0 RC3 Примечания

Начиная с RC 3, у нас есть лучший механизм для настройки свойств пусковых установок на всех трех платформах. Вы не должны редактировать файлы в каталоге установки IDE. Вместо этого вы можете настроить атрибуты, создав собственные файлы .properties или .vmoptions в следующих каталогах. (Это было возможно на некоторых платформах и раньше, но для этого требовалось копировать и изменять все содержимое файлов. С последними изменениями эти свойства теперь являются аддитивными, так что вы можете установить только те атрибуты, которые вам нужны, а остальные будет использовать значения по умолчанию из установки IDE).

Однако нет никаких объяснений о том, что варианты.

После небольшого поиска я нашел это
Настройка параметров виртуальной машины для Android Studio на Mac
IntelliJ IDEA 14.0.0 Веб-справка / Файл IDEA.Properties

Однако не повезло с этим.

К счастью, мне удалось разрешить его на Yosemite с помощью переменных среды, как указано в примечаниях к выпуску 1.0 RC3.

Вы также можете поместить переменные окружения use для указания на определенные файлы переопределения в другом месте:
STUDIO_VM_OPTIONS, какой файл
vmoptions использовать STUDIO_PROPERTIES, какой файл свойств использовать
STUDIO_JDK, с каким JDK будет работать студия с

Это было немного сложно, потому что Android Studio не является приложением командной строки, поэтому мне пришлось использовать команду AppleScript для установки переменной среды при входе в систему. Больше информации здесь

Это моя команда launchctl для командной строки.

launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk

И это мой AppleScript (не забудьте сохранить его как приложение)

do shell script "launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk"

О launchctl, смотрите здесь


Я могу создать сценарий. Добавил этот скрипт в элемент Login, но каждый раз, когда я вхожу в него, меня просят запустить скрипты. Можем ли мы запустить это в фоновом режиме.
— twister_void

Разве не рекомендуется использовать JDK 7 вместо 8 для разработки Android?
— Штеффен

4
Вы также можете запустить AS из командной строки через open -a Android \ Studio, что позволит вам создать очень простой сценарий оболочки, который задает среду, как указано выше, а затем запускает AS. Для меня это было намного проще, чем возиться с launchctl и AppleScript.
— TBM

3
На самом деле есть способ без запуска AppleScript: отредактировать .bash_profile(если этот файл не существует, создайте новый), поставить export STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk, выйти из терминала (или любых текстовых редакторов, которые вы используете для редактирования этого файла), запустить Android Studio и альт. Испытано с OSX 10.10 и Android 1.0.1
— dumbfingers

1
@ gio да, вы должны использовать версию, установленную на вашем компьютере. Кстати, вы используете последнюю версию Android Studio? Потому что этот сценарий больше не нужен
— Антонио Хосе

21

Обратите внимание, что эта последняя переменная позволяет вам, например, запустить Android Studio с Java 7 в OSX (который обычно выбирает Java 6 из версии, указанной в Info.plist):

$ export STUDIO_JDK = / Библиотека / Java / JavaVirtualMachines / jdk1.7.0_67.jdk

$ open / Приложения / Android \ Studio.app

Работал для меня


export ANDROID_STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdkсделал трюк для меня. Спасибо!
— июля

2
Спасибо. Это то же решение, что и на сайте Android. Вот ссылка: tools.android.com/tech-docs/configuration/osx-jdk
— MondKin

1
Это не НЕ ответ. Официальный ответ - установить Java 6 (JRE, а не JDK - JDK может быть Oracle) с apple.com. Об этом четко говорится на сайте Android Studio.
— Илья

14

Измените этот ключ в Info.plist

Я изменился с

<key>JVMVersion</key>
<string>1.6*</string>

в

<key>JVMVersion</key>
<string>1.8*</string>

и теперь он работал нормально ..

Отредактировано:
согласно официальному заявлению, как упомянуто выше hasternet и aried3r, решение Антонио Хосе является правильным.

Спасибо!


«Обратите внимание: не редактируйте Info.plist для выбора другой версии. Это нарушит не только подпись приложения, но и будущие обновления патчей для вашей установки».
— Nitesh Goel

12

Как начинающему пользователю, мне потребовалось некоторое время, чтобы понять, как это исправить правильно. После поиска и понимания многих ответов по SO, я предложил следующие шаги, которые необходимо выполнить, чтобы решить проблему.

Пожалуйста, обратите внимание:

Хотя самое простое решение - обновить Info.plist из студии android. Но это не рекомендуется и не правильный способ это исправить.

Официальное заявление: «Обратите внимание: не редактируйте Info.plist, чтобы выбрать другую версию. Это нарушит не только подпись приложения, но и будущие обновления патча для вашей установки».

Первое решение: если вы запускаете Android Studio из командной строки, вы можете добавить эти две строки в ваш .bash_profile

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk

$ open /Applications/Android\ Studio.app

Со следующего раза, когда вы открываете свой терминал, ваша студия запускается автоматически.

Второе решение: если вы хотите запустить Android Studio из пользовательского интерфейса (щелкнув по значку), выполните следующие действия:

  1. Откройте редактор скриптов на Mac (его можно найти в центре внимания )
  2. Скопируйте ниже строки

    сделать сценарий оболочки "launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk"

Примечание: - Измените версию JDK в соответствии с вашей версией. Чтобы проверить, какую версию вы используете, откройте терминал и выполните следующую команду

java -version

3. Теперь сохраните (⌘ + s) как Формат файла: Приложение . Наконец, откройте « Настройки системы» → «Пользователи и группы» → «Элементы входа» и добавьте только что созданное вами новое приложение.

  1. Выйдите из системы и войдите снова, или вы можете запустить это приложение вручную.

woolaaaa ... Это сделано.

Ссылки :

Ответ Антонио Хосе

ответ Руарио


1
Нет необходимости перезапускать, если вы просто откроете это приложение, верно? :)
— yjsoon

да вызывающе Вы также можете запустить это приложение вручную.
— Nitesh Goel

1
@niteshgoel, спасибо за полный ответ "все в 1"! Я проверил, что перезагрузка не нужна, как вы указали, просто цикл выхода из системы. :)
— khyox

Это не НЕ ответ. Официальный ответ - установить Java 6 (JRE, а не JDK - JDK может быть Oracle) с apple.com. Об этом четко говорится на сайте Android Studio.
— Илья

9

Я использую Mac OS X 10.10 также. И исправить эту проблему.

  1. Откройте содержимое пакета приложения Android Studio (щелкните правой кнопкой мыши значок Android Studio в папке «Приложение»).
  2. Открыть файл Infor.plist
  3. Поиск и замена:

    <key> JVM version</key>
    <string>1.6*</string>

заменен на:

    <key> JVM version</key>
    <string>1.6+</string>

Это оно!


«Обратите внимание: не редактируйте Info.plist для выбора другой версии. Это нарушит не только подпись приложения, но и будущие обновления патчей для вашей установки».
— Nitesh Goel

6

В Mac OS X Yosemite просто установите:

Java SE Development Kit 8

и

Java Версия 8 Обновление 25

Это все, работа для меня!


Java SE Development Kit 8 мне хватило. Спасибо!
— Mathijs

5
  1. Установите новейший JDK (текущий 8u102)
  2. Установить переменную envirionment STUDIO_JDK( java_homeвыводит домашний каталог Java и sedудаляет две папки, чтобы получить каталог jdk)

    launchctl setenv STUDIO_JDK `/usr/libexec/java_home -version 1.8 | sed 's/\/Contents\/Home//g'`

  3. Запустите Android Studio, как обычно

Установите STUDIO_JDK при каждой перезагрузке

Вышеуказанные шаги работают только для текущего сеанса. Вот как создать файл plist в / Library / LaunchDaemons, который запускает приведенную выше команду при каждой загрузке:

sudo defaults write /Library/LaunchDaemons/com.google.studiojdk Label STUDIO_JDK
sudo defaults write /Library/LaunchDaemons/com.google.studiojdk ProgramArguments -array /bin/launchctl setenv STUDIO_JDK `/usr/libexec/java_home | sed 's/\/Contents\/Home//g'`
sudo defaults write /Library/LaunchDaemons/com.google.studiojdk RunAtLoad -bool TRUE

Узнали об уловке plist благодаря http://www.dowdandassociates.com/blog/content/howto-set-an-environment-variable-in-mac-os-x-launchd-plist/


3

На сайте Android Tools Project есть отличное объяснение Mac OSX JDK Selection . Это исправило мою проблему. В итоге:

Android Studio требуется два разных JDK:

  • Версия Java, с которой работает сама IDE.
  • Версия JDK, которую он использует для получения компилятора Java

Эти два могут быть (и обычно являются) одинаковыми, но вы можете настроить их индивидуально. И на OSX, в частности, они часто будут разными.

и для Yosemite (Mac OSX 10.10)

Во-первых, убедитесь, что у вас установлена ​​последняя версия Java 6; в некоторых случаях это решило проблемы: http://support.apple.com/kb/DL1572

Если нет, попробуйте запустить последнюю версию Java 7 или Java 8, установив STUDIO_JDK, как описано выше. Сообщается, что это исправило другие проблемы (хотя вы получите отображение шрифта для Java 8 выше).


2

Ява была удалена, когда я обновился до OS X El Capitan.

Смотрите скриншот терминала до и после переустановки Java.

введите описание изображения здесь

Чтобы переустановить Java, я перешел по этой ссылке, которая была предоставлена ​​в диалоговом окне Android Studio.

введите описание изображения здесь

Android Studio снова запустилась после переустановки Java.


1

Отредактируйте файл Info.plist для android studio в пакете так, чтобы он использовал версию 1.7 или любую другую версию JVMVersion, которую вы установили. Изменение JVMVersion на 1.6+ вместо 1.6 *, как ответил hasternet выше, также должно работать.

Вышеуказанное работает, но не рекомендуется, см. Примечания к выпуску RC3

Начиная с RC 3, у нас есть лучший механизм для настройки свойств пусковых установок на всех трех платформах. Вы не должны редактировать файлы в каталоге установки IDE . Вместо этого вы можете настроить атрибуты, создав собственные файлы .properties или .vmoptions в следующих каталогах. (Это было возможно на некоторых платформах и раньше, но для этого требовалось копировать и изменять все содержимое файлов. С последними изменениями эти свойства теперь являются аддитивными, так что вы можете установить только те атрибуты, которые вам нужны, а остальные будет использовать значения по умолчанию из установки IDE).

увидеть Android Studio не удалось загрузить JVM на Mac OSX (Mavericks)


2
Это не рекомендуется, как сказано в Примечаниях к выпуску
— Антонио Хосе



1

В Mac OS X Yosemite просто установите:

Java SE Development Kit 8

и

Java Версия 8 Обновление 25

Это все, работа для меня тоже! как сказал геев, так просто!


1

Вы можете реализовать STUDIO_JDKрешение с помощью агентов запуска вашего пользователя. Это включает создание одного plist-файла в вашем каталоге LaunchAgents, расположенном по адресу~/Library/LaunchAgents

Создайте новый файл, ~/Library/LaunchAgents/UNIQUE_KEY.plistгде UNIQUE_KEY - просто идентификатор. Я использую ком. имя пользователя .androidstudio.

Скопируйте следующий текст в новый файл plist и измените его в соответствии с инструкциями ниже.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>Label</key>
   <string>UNIQUE_KEY</string>
   <key>ProgramArguments</key>
   <array>
      <string>sh</string>
      <string>-c</string>
      <string>launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk</string>
   </array>
   <key>RunAtLoad</key>
   <true/>
</dict>
</plist>

Вам нужно будет сделать две модификации:

  1. Измените UNIQUE_KEY в соответствии с вашим именем файла (без расширения .plist).
  2. Убедитесь в правильности пути JDK и при необходимости измените его. Я использую 7u71 в этом примере.

Это то же основное решение, что и ответ Антонио Хосе . Он устанавливает переменную среды STUDIO_JDK на основе заметок о выпуске RC3 для Android Studio версии 1.0 . Это решение использует каталог LaunchAgents вместо AppleScript для установки переменной среды. Таким образом, это в основном разница в том, как вы упорядочиваете и организовываете переменные вашей системы и среды.


1

Не редактируйте лист.Эти инструкции сработали для меня в первый раз, когда я установил Android Studio несколько месяцев назад, а также только сегодня. (1/21/2015)

Все, что вам нужно сделать, это несколько простых вещей, хотя на самом деле их нет в списке на сайте Google.

  1. Сначала вам нужно установить Java. это не JDK, это отдельный. Вы можете получить это по этой ссылке. Если у вас его нет, он, вероятно, выдаст сообщение об ошибке типа « JVM не установлен».
  2. Во-вторых, вам нужен Java JDK, я получил JDK 7 по этой ссылке. Обязательно выберите ссылку Mac OS X под заголовком Java SE Development Kit 7u75. Если у вас этого нет, вероятно, будет выдано сообщение об ошибке типа « JDK не установлен».
  3. Если вы еще не установили Android Studio, сделайте это. Но я уверен, что вы уже сделали это.

1

Как и предложил @Gerard, я в качестве ответа отвечу на свой оригинальный комментарий ( https://stackoverflow.com/a/27370525/763459 ), надеюсь, он поможет другим, кого раздражает эта проблема.

Есть способ без запуска AppleScript: edit .bash_profile(если этот файл не существует, создайте новый, как и предложил @Gerard, который вы можете использовать source .bash_profileвпервые).

  • Установите устаревшую Java (может быть необходим) http://support.apple.com/kb/DL1572

  • Поместите экспорт STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk

  • Затем выйдите из терминала (или любых текстовых редакторов, которые вы используете для редактирования этого файла), запустите Android Studio и Viola

Протестировано с OSX 10.10 и Android 1.0.1


1

Android Studio будет считывать настройки из файла ~ / Library / Preferences / AndroidStudio / idea.properties. Я создал этот файл и в нем есть путь к моему JDK:

STUDIO_JDK = / Library / Java / JavaVirtualMachines / jdk1.8.0_45.jdk

Нет необходимости редактировать Info.plist!


0

«В Mac OS запустите Android Studio с Java Runtime Environment (JRE) 6 для оптимизированной визуализации шрифтов. Затем вы можете настроить свой проект на использование Java Development Kit (JDK) 6 или JDK 7.»

Это было указано в http://developer.android.com/sdk/index.html под системными требованиями для Mac OS X.

После того, как вы установите Java 6 (не JDK) из Apple в соответствии с Alonso C. Licks, вы сможете открыть Android Studio и перенастроить его по своему усмотрению без необходимости возиться с терминалом, файлом info.plist или другими библиотеками.


0

Я скачал Intellij Idea. Когда я пытаюсь установить Intellij, появляется всплывающее окно, в котором отсутствует мой Mac с Java RE, вы хотите загрузить его? После того, как я скачал недостающий пакет с помощью Intellij, я смог открыть Android Studio.




0

Я имею дело с той же проблемой, и у меня получилось.

Вероятно, ваша версия JDK не подходит.

Теперь я установил JDK1.8, и теперь все в порядке.


0

Для тех, у кого возникли проблемы при создании скрипта, запускаемого при запуске, в качестве альтернативы вы можете добавить этот .plist в папку LaunchAgents. Это может быть более подходящим способом добавления переменных среды в систему, так как Yosemite решил покончить с launchd.conf. Это также должно работать с учетными записями пользователей из-за характера папки LaunchAgents, но я этого не проверял.

Для этого создайте файл .plist со следующим именем и путем:

/Library/LaunchAgents/setenv.STUDIO_JDK.plist

и содержание:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Label</key>
            <string>setenv.STUDIO_JDK</string>
        <key>ProgramArguments</key>
            <array>
                <string>sh</string>
                <string>-c</string>
                <string>
                    launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk
                </string>
            </array>
        <key>RunAtLoad</key>
            <true/>
        <key>ServiceIPC</key>
            <false/>
        <key>LaunchOnlyOnce</key>
            <true/>
        <key>KeepAlive</key>
            <false/>
    </dict>
</plist>

Затем измените свойства файла, выполнив следующие команды в Терминале:

sudo chmod 644 /Library/LaunchAgents/setenv.STUDIO_JDK.plist

sudo chown root /Library/LaunchAgents/setenv.STUDIO_JDK.plist

sudo chgrp wheel /Library/LaunchAgents/setenv.STUDIO_JDK.plist

Ноты:

1) Вам может потребоваться изменить «jdk1.8.0_25.jdk», чтобы он соответствовал версии, установленной на вашем компьютере.

2) Я пытался использовать «jdk1.8. *. Jdk», чтобы попытаться учесть различные версии Java *, но когда я открыл Android Studio, я получил ошибку no JVM, даже если вы запустите «echo $ STUDIO_JDK», он вернет правильный путь Возможно, у кого-то есть понимание того, как решить эту проблему.


0

Попробуйте загрузить Java со страницы поддержки Apple: http://support.apple.com/kb/DL1572, если это не работает для вас или не удается загрузить ( очень распространенная проблема ), просто перейдите по этой ссылке, чтобы загрузить и установить Java версия вам нужна:

http://support.apple.com/downloads/DL1572/en_US/JavaForOSX2014-001.dmg

Вот и все.


0

Ранее я удалил Java 6 и установил Java 7, Android Studio работала нормально, затем я обновил Android Studio, и у меня возникла проблема, с которой сталкиваются все. Сегодня я удалил Java 7 и установил Java 8 из Oracle. Затем я удаляю Android Studio и устанавливаю последнюю версию. У меня все работает сейчас


-1

Я смог заставить его работать, отредактировав info.plist, изменив 16 * на 16+. Попытка с использованием рекомендуемого метода, но это не удалось.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.