web-dev-qa-db-ja.com

UbuntuでJavaプログラムを実行する方法

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プログラムを実行する方法を教えてください。

13
Sachin dua

ターミナルを開いて実行します:

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-7-jdkの代わりにopenjdk-6-jdkを使用することもできます。 Ubuntu 15.10以降では、最初のコマンドでopenjdk-7-jdkの代わりにopenjdk-8-jdkを使用することもできます。 Ubuntu 17.10では、openjdk-9-jdkに置き換えることもできます。 Ubuntu 17.10以降では、openjdk-11-jdkを使用することもできます。

12
karel

Oracle JDKをインストールする場合は、この記事でOracle JDK 8のインストール手順を説明します。 buntuに最新のOracle JDKをインストールする

ステップ1:この公式の link から最新の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"
2
Vishnuvathsan