Как запустить программу на Java в Ubuntu

13
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.

Сачин дуа
источник

Ответы:

12

Откройте терминал и запустите:

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.

Карел
источник
2

Если вы предпочитаете устанавливать 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"
Vishnuvathsan
источник