1. ホーム
  2. スクリプト・コラム
  3. リナックスシェル

Linuxサーバーにおけるjdkのインストールパスの確認方法

2022-01-05 14:27:02

linuxサーバーのjdkのインストールパスを表示する

Linuxサーバー上のJDKのインストールパスを調べるにはどうすればよいですか?JDKのインストールパスを見つける方法には、どのようなものがありますか?何か制限はありますか?ここでは、JDKのインストールパスを見つける方法についてまとめています。

1: エコー $JAVA_HOME

JAVA_HOMEを使用する場合、環境変数$JAVA_HOMEを設定した場合のみ、JDKのインストールパスを特定することができ、それ以外の場合は、以下のように、JDKのインストールパスを全く特定することができません。

[root@localhost ~]# java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
[root@localhost ~]# echo $JAVA_HOME


2: どのJavaを使うか

まず確認したいのは、which javaはインストールパスを特定するのではなく、javaプログラムの実行パスを特定することです。インターネット上の情報は、あちこちにあり、全く考えられていません。では、javaのインストールパスを特定するにはどうすればよいのでしょうか。次の例で、次のように見てみましょう。

[root@localhost ~]# java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
[root@localhost ~]# which java
/usr/bin[root@localhost ~]# ls -lrt /usr/binlrwxrwxrwx. 1 root root 22 Aug 17 15:12 /usr/bin/java -> /etc/alternatives[root@localhost ~]# ls -lrt /etc/alternativeslrwxrwxrwx. 1 root root 46 Aug 17 15:12 /etc/alternatives/java -> /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin[root@localhost ~]# 
[root@localhost ~]# cd /usr/lib[root@localhost jvm]# ls
java-1.6.0-openjdk-1.6.0.0.x86_64 java-1.7.0-openjdk-1.7.0.65.x86_64 jre jre-1.6.0 jre-1.6.0-openjdk.x86_64 jre-1.7.0 jre-1.7.0-openjdk. x86_64 jre-openjdk
[root@localhost jvm]# 

whereis javaも同様で、インストールパスそのものを見つけることはできません。上の例でインストールパスを見つけることができます。

3: rpm -ql パッケージ名

JDKがソースにインストールされている場合、この方法もうまくいきません。つまり、rpm -ql packagenameにも制限があるのです。

[root@localhost ~]# java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
[root@localhost ~]# rpm -qa | grep java
tzdata-java-2014g-1.el6.noarch
java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64
java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
[root@localhost ~]# rpm -ql java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64 | more
/etc/.java
/etc/.java/.systemPrefs
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jaas-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jaas-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jaas.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jce-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jce-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jce.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jdbc-stdext-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jdbc-stdext-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jdbc-stdext-3.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jdbc-stdext.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-cos-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-cos-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-cos.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-ldap-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-ldap-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-ldap.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-rmi-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-rmi-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi-rmi.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jndi.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jsse-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jsse-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/jsse-1.7.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/sasl-1.7.0.65.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/sasl-1.7.0.jar
/usr/lib/jvm-exports/java-1.7.0-openjdk-1.7.0.65.x86_64/sasl.jar
/usr/lib/jvm-exports/jre-1.7.0-openjdk.x86_64
/usr/lib/jvm-private/java-1.7.0-openjdk.x86_64
/usr/lib/jvm-private/java-1.7.0-openjdk.x86_64/usr/lib/jvm-private/java-1.7.0-openjdk.x86_64/jce/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/ASSEMBLY_EXCEPTION
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/THIRD_PARTY_README
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/usr/lib/

2. Enter the directory where jdk is located

[root@centos6 ~]# cd /usr/java/jdk1.7.0_80

3. Run

[root@centos6 jdk1.7.0_80]# . /bin/java -version

The result is as follows.

Two: The environment variable is set

1. Any directory to execute

[root@centos6 usr]# java -version

The result looks like this.

Three: uninstall jdk

1. Determine the version of the JDK.

[root@centos6 lib]# rpm -qa|grep jdk
[root@centos6 lib]# rpm -qa | grep gcj

Possible results are.

jdk-1.7.0_80-fcs.x86_64
libgcj-4.4.7-3.el6.x86_64

2. Then uninstall.

[root@centos6 lib]# rpm -e --nodeps libgcj-4.4.7-3.el6.x86_64
# or
[root@centos6 lib]# rpm -e --nodeps jdk-1.7.0_80-fcs.x86_64

The above is personal experience, hope it can give you a reference, also hope you can support more Codedevlib.