使用eclipse进行tomcat远程调试(阿里云服务器)

tomcat远程调试可以让我们对部署在服务器上的项目进行debug调试,方便我们找出代码中的错误。今天在网上搜了相关的方法,发现里面对一个地方没有讲到,让我始终没有连接成功。现在把我踩过的坑跟大家讲一下:
1.root用户启动的进程不支持进行远程调试,大家可以使用ps -ef|grep tomcat看下该进程是否是root用户启动

如果是root用户的话,就要重新创建一个用户并再安装一个tomcat
添加用户命令(以work为例):useradd work
然后切换到work用户:su work
切换到work用户的工作目录:cd ~
并将tomcat上传一份到该目录下并进行解压(如果安装过lrzsz的话,使用rz命令就可以上传该文件)
使用eclipse进行tomcat远程调试(阿里云服务器)_第1张图片
但我运行这个tomcat的时候又有一个坑
使用eclipse进行tomcat远程调试(阿里云服务器)_第2张图片
发现CATALINA_BASE用的是我第一个tomcat的路径,而且catalina.out不能进行输出,因为它将输出的是我root用户下的catalina.out当然报权限不够
这里因为有2个tomcat,所以要到profile里添加一个CATALINA_2_BASE和CATALINA_2_HOME
使用命令:vi /etc/profile进行添加
使用eclipse进行tomcat远程调试(阿里云服务器)_第3张图片
红线框的是我后来为第2个tomcat添加的信息。(这里要注意,因为这里如果是work用户进行添加,可能报权限不够的情况,所以我这里切回到root用户进行添加的)
使用 source /etc/profile 使其生效
然后回到第2个tomcat的bin目录下的 catalina.sh添加
export CATALINA_BASE=$CATALINA_2_BASE
export CATALINA_HOME=$CATALINA_2_HOME
使用eclipse进行tomcat远程调试(阿里云服务器)_第4张图片
启动tomcat,查看信息,就会发现进程是由work用户创建,且tomcat启动不会报错了。
使用eclipse进行tomcat远程调试(阿里云服务器)_第5张图片
接下来设置tomcat远程调试的过程
1.在CATALINA.sh中设置,调试的端口为8888(如果你是阿里云服务器,要在安全组中将该端口开启
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888"
使用eclipse进行tomcat远程调试(阿里云服务器)_第6张图片
2.重新启动tomcat后,使用ps -ef|grep tomcat可以查看tomcat信息,这里就将debug信息打印出来

3.ECLIPSE中进行设置,这个在第二篇博客中有涉及,这里就不重复讲了

参考博客:https://www.cnblogs.com/shihaiming/p/5896283.html
                   https://yq.aliyun.com/articles/770



你可能感兴趣的:(java,linux)