使用IDEA远程部署tomcat和调试

环境:

  • CentOS 7
  • Tomcat 9.0.1
  • jdk-9.0.1
  • IntelliJ IDEA 2017.3

Tomcat中的配置

  1. catalina.sh文件中加入以下的配置
CATALINA_OPTS="-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=1099 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false 
-Djava.rmi.server.hostname=192.168.19.200
-agentlib:jdwp=transport=dt_socket,address=15833,suspend=n,server=y"
export CATALINA_OPTS
  • 以上端口可以随意改动,但是必要的是后续的设置必须保持一致,并且务必保证端口没有被占用,这些设置的端口在防火墙中是开放状态;
  • 其中1099的是tomcat远程部署连接端口;
  • 15833 是远程调试的端口;
  • 192.168.19.200是远程的服务器的Ip。
  1. 启动tomcat
    使用命令启动
./bin/catalina.sh run &

IDEA中的配置

新建远程tomcat

img

配置远程服务

img

img

img

配置连接tomcat的一些属性

img

img

img

debug启动测试

连接:

[2017-12-23 08:47:03,592] Artifact devframe-server:war exploded: Artifact is not deployed. Press 'Deploy' to start deployment
[2017-12-23 08:47:03,650] Artifact devframe-server:war exploded: Artifact is being deployed, please wait...
Connected to server
Connected to the target VM, address: '192.168.19.200:15833', transport: 'socket'
[2017-12-23 08:47:11,434] Artifact devframe-server:war exploded: Error during artifact deployment. See server log for details.

文件传输:

[2017/12/23 20:47] Uploading to 192.168.19.200 completed in less than a minute: 357 files transferred (8 Mbit/s)

这样就能够成功远程部署并且调试了。

使用的技巧:
img
这样每次修改完,点一下就可以热部署,是不是很方便。

容易出现的问题

  • 如果远程没有连接上,两个端口被占用或者防火墙屏蔽。除了JMX server指定的监听端口号外,JMXserver还会监听一到两个随机端口号,这个如果防火墙关闭了的话就不用考虑,如果使用了防火墙,还需要查看它监听的端口。
  • 账号的相应的读写权限一定要有;
posted @ 2018-05-02 23:20  KronChan  阅读(...)  评论(...编辑  收藏