ウェブサイト検索

LinuxでJAVAホームディレクトリを特定し設定する方法


Javaのホームディレクトリは、Java Runtime EnvironmentとJava Development Kitのインストールディレクトリです(参照:Java JDKとJRE)。このディレクトリには、Javaに付属するすべてのファイルが含まれており、Javaプログラムを実行したりコンパイルしたりするために使用されます。このディレクトリの場所は、システム(Linux、MacOS、Windowsなど)やインストールされているJavaのバージョンによって異なる場合があります。

異なるシステムやインストールにおいてディレクトリが変わることが知られているため、あなたのLinuxシステムで実行またはコンパイルしようとしているJavaプログラムは、Javaのホームディレクトリの場所を特定する信頼できる方法を必要とします。Linuxでは、JAVA_HOME環境変数が一般的に使用され、アプリケーションが正しい場所を特定するために利用されています。その他の方法も存在しますが、以下で確認できます。

このチュートリアルでは、Linuxシステム上でJavaホームディレクトリを見つける方法を学びます。また、環境変数を編集してJavaホームディレクトリを設定する方法も示します。

このチュートリアルでは、あなたは学びます:

  • 環境変数、Javaコマンド、基本的なLinuxコマンドを使用してJAVAホームディレクトリを見つける方法
  • 環境変数を介してJAVAホームディレクトリを設定する方法

LinuxでのJavaホームディレクトリの位置特定

以下に、LinuxでJavaホームディレクトリの場所を特定する方法をいくつか見ていきましょう。

  1. 最初の方法は、環境変数を印刷することです。最近のバージョンのJavaでは、システムの環境変数は手動で設定した場合にのみ設定されている可能性があります。

    
    printenv JAVA_HOME
    or
    echo $JAVA_HOME
    

    出力が得られない場合は、環境変数が設定されていませんが、以下の他の方法のいずれかを使用できます。

  2. Java自体を使用して、インストールディレクトリを確認するコマンドを実行できます。次に、grepコマンドを使用して関係する設定(この場合はjava.home)を探します。

    
    java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home'
        java.home = /usr/lib/jvm/java-19-openjdk-amd64
    

    このコマンドは、Javaホームが正確にどこにあるかを示しています。

    ご存知でしたか?
    このコマンドがエラーを生じる場合、Javaが全くインストールされていないか、システム上で正しく設定されていない可能性があります。Javaファイルを手動で見つけるためにfindコマンドを使用することをお勧めします。または、システム上でJava JREまたはJDKを再インストールしてください。

  3. Javaのホームディレクトリを特定するもう一つの方法は、dirnameや以下の他のコマンドを組み合わせて使用することです。これは、javac実行可能ファイルのルートディレクトリを明らかにすることで機能します。

    
    dirname $(dirname $(readlink -f $(which javac)))
    /usr/lib/jvm/java-19-openjdk-amd64
    
  4. もう一つの方法は、java コマンドのパスを確認することです。これには which コマンドを使用できます。ここでの唯一の厄介な部分は、コマンドがしばしばシンボリックリンクを指す点です。そして、おそらくそのシンボリックリンクは別のものを指しているかもしれません。以下の出力を見てみて、私たちが何を意味しているのかを理解してください。

    
    which java
    /usr/bin/java
    

    コマンド java は /usr/bin/java を指しています - どこに行くのか見てみましょう。

    
    ls -l /usr/bin/java
    lrwxrwxrwx 1 root root 22 May 22 23:43 /usr/bin/java -> /etc/alternatives/java
    

    それは別のシンボリックリンクを指します。さらなる調査により、Java実行可能ファイルの場所としたがってJavaホームディレクトリが明らかになります:

    
    ls -l /etc/alternatives/java
    lrwxrwxrwx 1 root root 43 Jun  6 01:50 /etc/alternatives/java -> /usr/lib/jvm/java-19-openjdk-amd64/bin/java
    

    Javaのホームディレクトリは、私たちのテストシステムで/usr/lib/jvm/java-19-openjdk-amd64として示されています。Java実行可能ファイル自体はbin/Javaにありますが、この部分はホームディレクトリではないことに注意してください。

LinuxでJavaホームディレクトリを設定する

私たちは、JAVA_HOMEの環境変数を設定することによって、Linuxシステム上にJavaのホームディレクトリを設定します。

  1. ユーザーの ~/.bashrc ファイルを nano または好みのテキストエディタで開いてください。

    
    nano ~/.bashrc
    
  2. このファイルの下部に、次の行を追加してください:

    
    export JAVA_HOME='/usr/lib/jvm/java-19-openjdk-amd64'
    

    上記のディレクトリを実際のJavaホームディレクトリ(すべてのJava JDKおよびJREファイルが存在する場所)に置き換えることを忘れないでください。

  3. その後、変更を保存してファイルを終了します。次に、変更を適用するためにターミナルで次のコマンドを実行します:

    
    source ~/.bashrc
    

    すべて完了しました。

締めくくりの考え

このチュートリアルでは、LinuxシステムでJAVAホームディレクトリを見つけて設定する方法を見ました。ホームディレクトリの環境変数を確認する方法、Javaコマンドを使用してホームディレクトリを明らかにする方法、そしてJava実行可能ファイルへのパスをたどることで手動でホームディレクトリを特定する方法を学びました。これらの方法のいずれかは、Javaを正しくインストールしている限り、どのLinux環境においても必ず機能するでしょう。また、JAVA_HOMEディレクトリ環境変数を設定する方法も学びました。

関連記事: