注意:这种机制会极大降低jvm的性能,除非特殊情况谨慎使用
生产环境启动参数 start.sh
JAVA_DEBUG_OPTS=""
if [ "$1" = "debug" ]; then
JAVA_DEBUG_OPTS=" -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n "
fi
# JAVA_DEBUG_OPTS 放在Java脚本启动的JVM参数
# 解释: 随着jkd版本的升高,上面的写法变了,但是功能并不影响,待会儿到idea的时候就能看到了。
# -Xrunjdwp 是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:
# transport 指定了调试数据的传送方式
# dt_socket 是指用SOCKET模式
# address 端口
# server=y/n VM 是否需要作为调试服务器执行。
# suspend=y/n 是否在调试客户端建立连接之后启动 VM 。
idea 配置调试端口
1.点击Edit Configurations
2.点击加号新建Remote
3.添加地址信息和端口号,选择项目文件
4.debug启动直接在本地断点就可以