私のシステムでJava .jarが実行されています。この.jarがどのJREを使用しているのかどうかはどうすればわかりますか?複数の場所に複数のJREがあります。
このwhich java
コマンドは
/usr/bin/java
$JAVA_HOME
に設定されています/usr/java/jdk-1.6.0
ps -ef
生産する
\xyzusr 5206 1 0 02:10 ? 00:00:00 ScrapJAR -p -u 2694 -g 15464 -- java -server -XX:+AggressiveHeap -Xms2048m -Xmx2048m -Xss512k
答え1
最も簡単な方法は、コマンドラインツールlsof
とその-p
スイッチを使用して特定のプロセスで使用されているファイルを一覧表示することです。
$ sudo lsof -p 5206 | grep jre
はい
以下は、出力結果がどのように見えるかを知らせるためのChromeプロセスです。
$ sudo lsof -p 1376 | head -10
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
chrome 1376 saml cwd DIR 0,3 0 46546425 /proc/10802/fdinfo
chrome 1376 saml rtd DIR 0,3 0 46546425 /proc/10802/fdinfo
chrome 1376 saml txt REG 253,1 93187864 1837056 /opt/google/chrome/chrome
chrome 1376 saml DEL REG 0,17 46544680 /dev/shm/.com.google.Chrome.1ciABr
chrome 1376 saml DEL REG 0,17 127971521 /dev/shm/.com.google.Chrome.t7ByaK
chrome 1376 saml mem REG 253,1 3334400 1837130 /opt/google/chrome/lib/libpeerconnection.so
chrome 1376 saml mem REG 253,1 17313408 1835692 /opt/google/chrome/PepperFlash/libpepflashplayer.so
chrome 1376 saml mem REG 253,1 6842800 1837141 /opt/google/chrome/libwidevinecdm.so
chrome 1376 saml mem REG 253,1 780024 559781 /usr/lib64/libsqlite3.so.0.8.6