之前网上找了好多方法 都太老 或者不完全..
现在最新的 方法如下
1 修改tomcat/bin/catalina.sh 文件
在# OS specific support. $var must be set to either true or false.前 加入
CATALINA_OPTS=”-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=11098
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=yourServerIP”
export CATALINA_OPTS
JAVA_OPTS=”$JAVA_OPTS -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=9998,server=y,suspend=n”
export JAVA_OPTS
其中 yourServerIP 改为你服务器的IP
将 11098 9998 改为你服务器中未被占用的端口
然后重新启动tomcat
./bin/catalina.sh run &
如果遇到端口已被占用的错误 直接杀死进程再启动即可在本文中就是杀掉11098端口的进程
kill -9 (netstat -tlnp|grep 11098|awk '{print7}'|awk -F '/' '{print $1}’)
2 IDEA配置
OK 随便打一个断点 然后 DEBUG启动 看看
IDEA会自动上传war包 然后 到断点就会跟本地调试一样停下来了…
2016-11-30 更新
图中的Path for root 与 Mapped as 中的 值应该反过来.否则导致war包 上传到/ 根目录中去了 – 网上的教程都是坑啊..