在linux服務器上用jar命令解壓jar包時,提示找不到jar命令。
但是用java -version查看jdk版本,又可以顯示出jdk版本。
echo $JAVA_HOME查看環境變量路徑,找不到。
查找jdk安裝目錄:
(網上搜到的方法:https://www.linuxidc.com/Linux/2015-08/122353.htm)
which java
首先要申明一下which 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/java
[root@localhost ~]# ls -lrt /usr/bin/java
lrwxrwxrwx. 1 root root 22 Aug 17 15:12 /usr/bin/java -> /etc/alternatives/java
[root@localhost ~]# ls -lrt /etc/alternatives/java
lrwxrwxrwx. 1 root root 46 Aug 17 15:12 /etc/alternatives/java -> /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
[root@localhost ~]#
[root@localhost ~]# cd /usr/lib/jvm
[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
查看這些文件夾下面的內容,發現服務器只是安裝了jre,並沒有安裝jdk,而jar命令是jdk中的,不是jre中的。
解決辦法只能安裝下jdk了。
如果安裝了jdk,有jar命令,只是沒加到環境變量中,可以通過以下方式進行添加。
在/usr/bin目錄下創建jar的軟連接。
[luopu@TESTWEB1_13 ~]$cd /usr/bin
[root@TESTWEB1_13 ~]#ln -s /opt/freeware/old/jdk1.7.0_79/bin/jar jar
添加后,運行jar,看是否成功。
