У меня есть один компьютер, на котором я намеренно установил JDK. У меня есть другой компьютер с JRE для тестирования. Однако, когда я получил приложение Java, работающее на этом компьютере, а затем попробовал его на другом, он пожаловался на необходимость JDK. Как я могу проверить, был ли JDK каким-либо образом установлен в моей системе? Примечание: рассматриваемый компьютер - Mac.
134
Ответы:
Вы можете открыть терминал и просто набрать
это должно показать вам версию Java, установленную в системе (при условии, что вы установили путь Java в системной среде).
А если нет, добавьте его через
и если вы не уверены, что у вас есть Java в вашей системе, просто используйте
find
в терминалет.е.
find / -name "java"
источник
Обычно установка jdk содержит javac в переменных пути среды ... так что если вы проверяете наличие javac в пути, это в значительной степени хороший индикатор того, что у вас установлен jdk.
источник
javac
на моем пути, но у меня действительно есть JDK установлен. (В моем случае указан мой JAVA_HOMEC:\Program Files\Java\jdk1.8.0_45
)@ maciej-cygan хорошо описал процесс, однако, чтобы найти ваш путь в Java:
$ which java
он дает вам путь
java
двоичного файла, который является связанным файлом в/usr/bin
каталоге. следующий:$ cd /usr/bin/ && ls -la | grep java
найдите указанное место, которое выглядит следующим образом (для меня):
затем
cd
в указанный каталог, чтобы найти настоящий домашний каталог для Java. следующий:$ ls -la | grep java
что в данном случае выглядит следующим образом:
так как это видно на скриншоте, мой домашний каталог Java есть
/usr/lib/jvm/java-11-openjdk-amd64
. Поэтому , соответственно , мне нужно добавить JAVA_HOME в профиль Баш (.bashrc
,.bash_profile
и т.д. в зависимости от вашей операционной системы) , как показано ниже:JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
Ну вот!
источник
согласно документации JAVA, JDK должен быть установлен по этому пути:
См. Раздел удаления JDK по адресу https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html.
Так что если вы можете найти такую папку, то JDK установлен
источник
Общее решение на чистом Java.
Для Windows и MacOS можно сделать следующие выводы (в большинстве случаев) ...
Однако ... в Linux это не так надежно ... Например ...
openjdk
путьТаким образом, более надежный подход - это проверить наличие
javac
исполняемого файла.Предупреждение: это все равно не удастся для комбинаций JRE + JDK, которые
sun.boot.library.path
идентично сообщают JRE между JRE и JDK. Например, JDK Fedora завершится ошибкой (или пройдет, в зависимости от того, как вы на это посмотрите) при выполнении вышеуказанного кода. Подробнее см. Ниже модульные тесты ...Модульные тесты:
источник
Решение только для macOS:
Где
1.8+
Java 1.8 или выше.К сожалению,
java_home
помощник не устанавливает правильный код возврата, поэтому проверка на сбой требует синтаксического анализа вывода (например2>&1 |grep -v "Unable"
), который зависит от языкового стандарта.Обратите внимание: Java также может существовать в
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin
, но на момент написания этой статьи я не знал, что там устанавливается JRE, которая также содержитjavac
.источник