sachin@sachin-Lenovo-G550:~$ java -version
java version “1.7.0_21″
OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-1ubuntu1)
OpenJDK Server VM (build 23.7-b01, mixed mode)
Когда я выполнил указанную выше команду, это показало, что Java установлена в моей системе, но когда я собираюсь скомпилировать любую программу на Java, выдается следующее сообщение об ошибке:
sachin@sachin-Lenovo-G550:~/programs$ javac abc.java
The program ‘javac’ can be found in the following packages:
* default-jdk
* ecj
* gcj-4.6-jdk
* gcj-4.7-jdk
* openjdk-7-jdk
* openjdk-6-jdk
Try: sudo apt-get install
Пожалуйста, сообщите мне, как избавиться от этого и запустить мою программу Java.
Откройте терминал и выполните:
sudo apt-get install openjdk-7-jdk
, а затем скомпилируйте вашу Java-программу, как раньше, с помощью: javac abc.java
. Затем запустите его с помощью:
java abc ## The name of the class to be called is abc NOT abc.class
Вы также можете заменить openjdk-6-jdk вместо openjdk-7-jdk в первой команде. В Ubuntu 15.10 и новее вы также можете заменить openjdk-8-jdk вместо openjdk-7-jdk в первой команде. В Ubuntu 17.10 вы также можете заменить openjdk-9-jdk. В Ubuntu 17.10 и более поздних версиях вы также можете заменить openjdk-11-jdk.
Если вы предпочитаете устанавливать Oracle JDK, в этой статье объясняется пошаговая инструкция по установке Oracle JDK 8: Установка последней версии Oracle JDK в Ubuntu
Шаг 1 : Загрузите последнюю версию JDK (jdk-Xuxx-linux-xXX.tar.gz) по этой официальной ссылке .
Шаг 2: Откройте терминал (Ctrl + Alt + T) и введите следующую команду.
sudo mkdir /usr/lib/jvm
Шаг 3: Введите следующую команду, чтобы изменить каталог.
cd /usr/lib/jvm
Шаг 4: Извлеките файл jdk-Xuxx-linux-xXX.tar.gz из этого каталога с помощью этой команды.
sudo tar -xvzf ~/Downloads/jdk-8u45-linux-x64.tar.gz
Шаг 5: Введите следующую команду, чтобы открыть файл переменных среды.
sudo gedit /etc/environment
Шаг 6: В открывшемся файле добавьте следующие папки bin в существующую переменную PATH.
/usr/lib/jvm/jdk1.8.0_45/bin
/usr/lib/jvm/jdk1.8.0_45/db/bin
/usr/lib/jvm/jdk1.8.0_45/jre/bin
Переменные PATH должны быть разделены точкой с запятой. Обратите внимание, что установленная версия JDK - обновление 1.8, версия 45. В зависимости от версии JDK пути могут быть разными. Добавьте следующие переменные окружения в конец файла.
J2SDKDIR="/usr/lib/jvm/jdk1.8.0_45"
J2REDIR="/usr/lib/jvm/jdk1.8.0_45/jre"
JAVA_HOME="/usr/lib/jvm/jdk1.8.0_45"
DERBY_HOME="/usr/lib/jvm/jdk1.8.0_45/db"
Файл среды до модификации:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Файл среды после модификации:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/jdk1.8.0_45/bin:/usr/lib/jvm/jdk1.8.0_45/db/bin:/usr/lib/jvm/jdk1.8.0_45/jre/bin"
J2SDKDIR="/usr/lib/jvm/jdk1.8.0_45"
J2REDIR="/usr/lib/jvm/jdk1.8.0_45/jre"
JAVA_HOME="/usr/lib/jvm/jdk1.8.0_45"
DERBY_HOME="/usr/lib/jvm/jdk1.8.0_45/db"