Java 生产环境 debug

要解决的问题:生产环境是内网服务器,只提供跳板机额外网访问权限,通过 idea 对生产环境进行调试。

1、生产环境启动参数 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 。 

2、idea 配置调试端口

打开 idea 当前工程,Edit configurations…,如下图

在Remote配置如下,其实就是host和端口而已,其实上面脚本里面的就类似于idea里面的这些。

3、SecureCRT 配置端口转发

我只会用SecureCRT 做端口转发,其他要是有好的工具欢迎建议给大家

首先在 SecureCRT 登录跳板机,比如我的跳板机是120.27.227.13,右键 properties 或者点工具栏的 options->session options

然后点 Port Forwarding,Add增加一条

编辑

4、以debug模式启动服务器

./start.sh debug

5、idea 点debug,就发现已经连接上了

现在就可以愉快的打断点调你的服务了,即将进入debug模式

微信公众号:志哥 (ID: zhige-me)
期待与你相遇,一同成长前行!


志哥的成长笔记
互联网技术分享,读书笔记,认知升级。
440 声望
175 粉丝
0 条评论
推荐阅读
Jackson 序列化对象成 JSON 字符串,忽略部分字段(属性)
2、上面那种方式需要在 bean 上加注解,作用于全局,但是有的时候,我们可能不需要在所有情况下都忽略这个对象的这些字段,下面这种方式可以支持定制过滤方式。

志哥阅读 3.3k

Java12的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...

codecraft63阅读 12k

Java8的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...

codecraft32阅读 24.7k评论 1

一文搞懂秒杀系统,欢迎参与开源,提交PR,提高竞争力。早日上岸,升职加薪。
前言秒杀和高并发是面试的高频考点,也是我们做电商项目必知必会的场景。欢迎大家参与我们的开源项目,提交PR,提高竞争力。早日上岸,升职加薪。知识点详解秒杀系统架构图秒杀流程图秒杀系统设计这篇文章一万多...

王中阳Go35阅读 2.6k评论 1

封面图
Java11的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...

codecraft28阅读 15.5k评论 3

Java5的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...

codecraft13阅读 20.5k

Java9的新特性
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java...

codecraft20阅读 14.6k

440 声望
175 粉丝
宣传栏