Установка Netbeans 8.2 на MacOS Big Sur, JDK не найден
Я недавно обновился до MacOS Big Sur, и при попытке открыть NetBeans 8.2 он выдал ошибку
JDK отсутствует и требуется для запуска некоторых модулей NetBeans. Используйте параметр командной строки --JDK home, чтобы указать установку JDK.
Я попытался установить JAVA_HOME на путь JDK, но это не сработало. Итак, я удалил Netbeans и JDK и повторно загрузил Netbeans 8.2 и JDK 8.
Теперь при попытке настроить Netbeans он показывает:
IDE NetBeans не может быть установлен. Java (JRE) находится на вашем компьютере, но требуется JDK 8 или новее. Загрузите и установите последнее обновление JDK 8 с http://www.oracle.com/technetwork/java/javase/downloads/index.html и перезапустите установку NetBeans.
Java -версия
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
Javac -версия
javac 1.8.0_271
Мой текущий $JAVA_HOME установлен на/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home
Я также попытался установить NetBeans 11 и 12 с JDK 14 и 15, но он дает ту же ошибку
РЕДАКТИРОВАТЬ: Ниже приводится единственное решение, которое сработало для меня.
/Applications/NetBeans/Apache\ NetBeans\ 12.1.app/Contents/Resources/NetBeans/netbeans/bin/netbeans --jdkhome /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home
Вставьте указанную выше команду в терминал. Он открывает NetBeans. Чтобы использовать NetBeans без повторного ввода команды, сохраните указанную выше команду в редакторе кода и сохраните как
NetBeans.command
файл.Затем откройте файл. Щелкните ОК в появившемся сообщении. Введите следующую команду на терминале.
sudo passwd root
Введите свой пароль для входа.
Просто нажмите Enter (новый пароль вводить не нужно)
Тип
su root
и еще раз ваш пароль для входа.Тип
chmod +x <path of the file you saved with .command>
. Закройте терминал и откройте сохраненный файл. Теперь он должен работать.
6 ответов
Это сработало для меня: запустите Java из новой установки.
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/Java/JavaVirtualMachines
sudo rm -rf /Library/Application\ Support/Oracle/Java/
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
Перезагрузить компьютер.
Скачайте и установите Java
jdk-8u271-macosx-x64
Перезагрузить компьютер.
Загрузите и установите NetBeans 12.1 из Appache Netbeans (извините, Netbeans 8.2 больше не работал у меня, хотя я сначала пытался).
Откройте Netbeans, выполните команду acepte import Netbeans 8.2. Перейдите на панель настроек Netbeans в меню Netbeans. Щелкните значок Java, затем щелкните Java Shell... дождитесь ответа Netbeans. Примите любой диалог (я забыл, но появляется какой-то диалог).
Netbeans будет жаловаться на то, что jdk не найден; выйти из Netbeans. Открыть файл
/Applications/NetBeans/NetBeans 12.1.app/Contents/Resources/NetBeans/etc/netbeans.conf
с bbedit или что-то подобное. Найдите и отредактируйте строку к этому:
netbeans_jdkhome="/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home"
Сохранить файл. Откройте Netbeans; перейдите на панель настроек Netbeans в меню Netbeans. Щелкните значок Java, затем щелкните Java Shell. Он может оставаться в пустом квадрате. Закройте панель настроек; перейдите в меню "Инструменты": вы увидите меню "Платформы Java", войдите в него. Вот и вся версия Java.
Hepoe это помогает.
У меня такая же проблема. Мне не нужно было перезагружать компьютер. Я просто поменял строчку:
netbeans_jdkhome="/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home"
в файле netbeans.conf из каталога:
/Applications/NetBeans/NetBeans\ 8.2.app/Contents/Resources/NetBeans/etc/netbeans.conf
и это сработало для меня
Похоже, проблема в том, что /usr/libexec/java_home в BigSur не работает (см. здесь: https://developer.apple.com/forums/thread/666681).
Установщик Netbeans проверяет, установлен ли JDK, используя /usr/libexec/java_home, получает неверный ответ и завершает работу с ошибкой.
Один из способов исправить это поведение — исправить установщик. Это можно сделать следующим образом:
предполагая, что в tmp нет каталога с именем «a»:
Откройте dmg, но не запускайте установщик
В оболочке введите следующую команду:
pkgutil --expand /Volumes/NetBeans\ 8.2\ RC/NetBeans\ 8.2\ RC.pkg /tmp/a
(если ваш установщик Netbeans имеет другое имя, измените команду, чтобы отразить фактическое имя вашего установщика)
Это открывает пакет и копирует его содержимое в /tmp/a.
Отредактируйте сценарий установки. С помощью текстового редактора откройте файл /tmp/a/Distribution.
в строке 13 заменить:
var java_result = checkJavaVersion();
с
вар java_result = истина;
и сохраните файл. Это позволит пропустить проверку версии Java. Вы несете ответственность за то, чтобы на вашем компьютере была установлена JDK 8 или последующие версии и чтобы эта версия использовалась при использовании команды java. Вы можете убедиться, что это нормально, проверив с помощью команды
Java-версия
- Давайте завершим это:
pkgutil --flatten /tmp/a ~/a.pkg
На данный момент у вас в домашнем каталоге есть пакет с именем a.pkg. Дважды щелкните по нему, и программа установки Netbeans выполнит свою работу.
У меня возникла такая же проблема, когда я смог установить Netbeans. И это работает для меня:
запустите эту командную строку в терминале:
варить установить netbeans
Это просто проблема с домашним путем netbeans jdk, чтобы не беспокоиться, попробуйте это -
Шаг 1 - Откройте терминал
/usr/libexec/java_home
Вывод - /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
Скопируйте этот путь, так как вы должны сохранить его в netbeans.conf
Шаг 2 - В терминале используйте это
nano /Applications/NetBeans/NetBeans\ 8.2.app/Contents/Resources/NetBeans/etc/netbeans.conf
найдите netbeansjdkhome и вставьте путь, который вы скопировали в ШАГЕ 1
В итоге это должно выглядеть так -
netbeansjdkhome="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home"
Шаг 3 - Перезагрузите и откройте Netbeans 8.2, теперь он будет работать нормально.
На самом деле это довольно просто! Но понять это было действительно сложно!
Расскажу пошагово:
ШАГ 1: Прежде всего, вы должны убедиться, что вы установили JAVA_HOME следующим образом (в зависимости от версии, которую вы установили:
export JAVA_HOME=$(/usr/libexec/java_home -v "1.8.0_275")
Если вы просто не знаете, какую версию jdk вы установили, просто сделайте следующее:
/usr/libexec/java_home -V
ШАГ 2: Хорошо, теперь вам нужно загрузить любую версию netbeans, которую вы хотите установить, с веб-сайта apache. Мне понадобилось 11.1.
ШАГ 3: Откройте файл dmg и скопируйте файл pkg в свой домашний каталог (вы можете использовать Finder или что угодно).
ШАГ 4: Выполните следующую команду в своем домашнем каталоге (убедитесь, что вы заменили youruser и yourpkgfilename.pkg правильной информацией):
/usr/bin/sudo -E -- /usr/bin/env LOGNAME=youruser USER=youruser USERNAME=youruser /usr/sbin/installer -pkg yourpkgfilename.pkg -target /
Вы должны получить такой результат:
installer: Package name is Apache NetBeans IDE 11.1
installer: Installing at base path /
installer: The install was successful.
PS: Видите, я подписался на это ПРЯМО СЕЙЧАС, просто чтобы помочь всем в той же проблеме здесь, я был бы очень признателен, если бы меня проголосовали как правильное решение, если это действительно поможет вам, хорошо?