我創建一個web項目中使用的彈簧引導和在遠程服務器上部署它,它的默認JDK是如何檢查正在運行的Java程序的Java版本使用
echo $JAVA_HOME
/usr/local/jdk1.7.0_72
,因爲我在我的項目用java 8,所以我開始項目之前,我明確exec的指令低於
export JAVA_HOME="/usr/local/jdk1.8.0_65"
然後開始我的項目
./myapp.jar
BU T當我exec的指令低於
java -version
java version "1.7.0_72"
Java(TM) SE Runtime Environment (build 1.7.0_72-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.72-b04, mixed mode)
我有點困惑,我不知道哪個版本的JDK實際使用我的項目? 也就是說有一個java程序
jps -l
17429 /var/myapp.jar
我怎麼知道哪個版本的Java使用它?
感謝@ frant.hartm
# ps aux | grep 17429
root 17429 0.4 6.7 5995260 1104984 pts/13 Sl 19:16 0:29 /usr/local/jdk1.8.0_65/bin/java -Dsun.misc.URLClassPath.disableJarChecking=true -Dserver.port=8081 -jar /var/myapp.jar
# jcmd 17429 VM.version
17429:
Java HotSpot(TM) 64-Bit Server VM version 25.65-b01
JDK 8.0_65
非常感謝! – zhuguowei