JDK Tomcat安装
上传jdk tomcat的tar包到/usr/local/src目录下
1
2
3
4
5
6
7
8
9
|
cd /usr/local/src/
# 解压jdk和tomcat
tar -zxvf apache-tomcat-8.0.30.tar.gz
tar -zxvf jdk-8u51-linux-x64.tar.gz
# 移动文件夹到运行目录
mv apache-tomcat-8.0.30 /usr/local
mv jdk1.8.0_51 /usr/local
|
打开编辑profile文件
在profile文件追加写入下面信息:
1
2
3
|
export JAVA_HOME=/usr/local/jdk1.8.0_51
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
|
保存退出,为了使环境配置生效,执行:
启动tomcat:
1
2
|
cd /usr/local/apache-tomcat-8.0.30/bin/
./startup.sh
|
若报没有权限执行sh,进入tomcat bin目录执行下述指令修改权限:
查看启动输出,成功则无任何错误,并且浏览器访问8080端口出现tomcat页面:
1
2
|
cd ../logs
tail -f catalina.out
|

修改tomcat访问端口为80端口:
1
2
|
cd /usr/local/apache-tomcat-8.0.30/conf
vi server.xml
|
找到下面这段配置:
1
2
3
|
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
|
将端口为80端口,保存退出,重启使用80端口访问:
1
2
3
|
cd ../bin
./shutdown.sh
./startup.sh
|

远程Tomcat调试
有时候项目部署到线上环境出了问题却只能靠日志分析或许太痛苦了,配置一个远程调试环境可以更好的加快排错速度。
被调试端配置
拷贝一份tomcat启动脚本
1
|
cp startup.sh startup-debug.sh
|
编辑startup-debug.sh,在原文件的脚本前加入:
1
2
3
4
5
6
|
# 调试服务器监听的端口
export JPDA_ADDRESS=8000
# Socket连接,可选dt_shmem 通过共享内存的方式连接到调试服务器
export JPDA_TRANSPORT=dt_socket
# 启动过程是否加载暂停,y为启动时暂停,方便调试启动过程
export JPDA_SUSPEND=n
|

编辑最后一行的:
1
|
exec "$PRGDIR"/"$EXECUTABLE" start "$@"
|
修改为:
1
|
exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@"
|
使用新的启动脚本重启tomcat:
1
2
|
./shutdown.sh
./startup-debug.sh
|
查看catalina.out的日志,看到 Listening for transport dt_socket at address: 8000 则配置成功。
eclipse配置
进入调试配置:

双击或者右键远程Java应用程序可以新增一个远程调试配置:

选择要调试的项目,填写远程tomcat的访问地址和调试端口,点击debug即可:

接下来就跟本地调试一样了,在eclipse设置好断点,远程服务器的代码执行到断点处就像本地的调试一样:

如果点击远程debug出现 Failed to connect to remote VM. Connection refused. 是因为你已经开启了一个远程调试了,并且远程连接还未关闭,点击工具栏的断开连接按钮即可连接另一个远程调试项目:


(责任编辑:IT) |