jps无法获取到tomcat(java)进程

来源:互联网 发布:vba编程基础知识.pdf 编辑:程序博客网 时间:2024/05/14 09:08

一、问题描述:

Ubuntu 10.10版本,同个JDK 1.6版本,启动tomcat后,使用jps无法获取本机Java进程。

二、jps工作原理:

1. java进程启动时,若没有指定 -Djava.io.tmpdir参数,则会默认新建 /tmp/hsperfdata_${user_name} 文件

2. jps查询java进程时会去扫描 /tmp/hsperfdata_${user_name} 文件


三、jps不能正常工作,可能存在的原因:

1.  启动tomcat的java与jps不同版本

2.  jps 因为权限问题无法读取 /tmp/hsperfdata_${user_name} 文件

3. java进程启动时指定 -Djava.io.tmpdir参数,即不采用默认值


四、问题定位:

     1.  ps查询java启动的参数

ps -ef | grep java | grep "Djava.io.tmpdir"
发现tomcat确实有指定Djava.io.tmpdir 参数

2. 修改tomcat默认的catalina.sh文件,修改如下

if [ -z "$CATALINA_TMPDIR" ] ; then  # Define the java.io.tmpdir to use for Catalina  CATALINA_TMPDIR=/tmpfi

3.重新启动tomcat,重新执行jps,问题解决


0 0
原创粉丝点击