首页 > 编程知识 正文

idea怎么调试代码,idea debug调试快捷键

时间:2023-05-06 14:22:27 阅读:130120 作者:1729

1、idea的设定

1.1加入Tomcat服务器并选择Remote

1.2 :设置相应参数

xxx.xxx.152.67:8080是远程Tomcat服务器的IP地址和端口,您可以在此设置域名。 例如http://security.xxxx.cn/login.do;

60222端口是在步骤1.1中设置的调试端口。 适合tomcat的端口不同

其中的远程staging选择了same file system。 因此,本地代码和远程Tomcat代码始终为1

1.3启动/连接

选择调试、套接字和调试端口,这里是60222

1.4 :选择执行

然后点击右边的调试就可以运行了。 (首先Tomcat启动。 )

1.5 :成功与否

可以看到连接成功,

检查Tomcatserver日志。 例如,以下:

6、假设失败

假设端口被拒绝:

如果tomcat未启动或由于错误而停止,则重新启动tomcat可能就足够了

连接失败。 其他问题

首先,在服务器端确认调试端口。 这里是60222的使用状况

使用netstat

使用netstat-ANP|grep 80 netstat-tln|grep 80

检查PS-ef是否已关闭

查看tail - f 10000 catalina.out日志

我不擅长使用lsof,不知道为什么

kill -9 12122删除进程

2、Linux服务器设置

将以下定义添加到tomcat下bin文件夹下的catalina.sh文件中:

catalina _ opts='-xdebug-xrunjdwp : transport=dt _ socket,address=60222,suspend=n,server=y '

扩展:

Tomcat的catalina.sh文件中的server启动停止脚本适用于两个变量: CATALINA_OPTS和JAVA_OPTS。 保存运行Tomcat所需的各种参数。

文件中的评论如下:

(可选) Java执行“开始”、“停止”或“运行时”命令时使用的运行时参数; [JAVA_OPTS]

(可选) Java执行“开始”或“运行时”命令时使用的运行时参数; [CATALINA_OPTS]

那么,为什么有两个不同的变量? 他们有什么区别?

首先,两个变量中定义的参数都传递给启动Tomcat的命令。 在' start '和' run '中,只有在JAVA_OPTS中定义的参数传递给' stop '命令。

因此,为任何变量定义参数都不会影响Tomcat的启动和执行,而只会影响Tomcat的执行结束。

第二个区别更微妙。 其他APP应用程序也可以使用JAVA_OPTS,但Tomcat仅使用CATALINA_OPTS。 因此,如果只使用Tomcat,则在设置环境变量时必须使用CATALINA_OPTS;如果也使用其他Java APP应用程序(如JBoss ),则在设置环境变量时必须使用JAVA_OPTS。

注意: address=60222这是稍后安装IDEA时所需的调试端口,您可以自由设置未使用的端口。 但是,后面的配置必须一致。

3 .参数说明:

1. JAVA支持调试功能,并提供简单的调试工具JDB以支持断点设置和线程级调试;

2 .各参数说明:

-XDEBUG通知JVM正在调试模式下运行

-Xrunjdwp通知JVM使用“Java调试wire协议”运行调试环境。 此参数还提供了一组调试选项:

传输指定调试数据的传输方式。 dt_socket指定套接字模式,dt_shmem指定共享内存方式。 其中dt_shmem仅适用于Windows平台。

服务器参数是指服务器模式的虚拟机是否支持。

onthrow表示生成此类型的Exception时,JVM将中断并进行调整。 此参数是可选的。

launch指示JVM中断时执行的可执行程序。 此参数是可选的

suspend指示是否在建立调试客户端后运行JVM。

onuncaught(=y或n )指示发生uncaught exception后是否中断JVM的运行。

扩展:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。