作为一名苦逼的程序员,肯定遇见过程序在本地跑的非常好,但是一放到远程的服务器上就各种问题的情况,这个时候只有远程调试。远程调试就是通过远程服务器上的socket端口告诉本地的程序源码,执行了什么操作,然后对应的在本地显示出运行的信息。那么既然通过socket,那肯定需要socket连接,所以现在服务器启动应用服务器的端口监听,下面以tomcat为例。本文介绍两种防范,当然个人推荐第二种,至于原因我不说大家都明白。
方法一:
linux:SET CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000"
然后就可以启动服务器了,./startup.sh就可以了。
本地的ide中中需要通过在debug中设置连接的socket就可以了,端口当然是8000.
为了形象的说明附图三张,头两种是eclipse的,后一张是idea的。
方法二:
tomcat服务器已经内置了JPDA支持,只要用:
catalina.sh jpda start
这条命令启动tomcat,它就会监听8000端口,等待调试器的连接。要注意不能使用 startup.sh脚本。tomcat会使用 JPDA_ADDRESS这个环境变量的值。比如想监听8017端口:
export JPDA_ADDRESS=8017
catalina.sh jpda start
接着,选一个自己喜欢的调试器,基本上现在主流的如Eclipse,idea,NetBean都可以。我主要使用Eclipse,操作只要三步:
1.选择“Run”菜单里的“Open Debug Dialog”。
2.在对话框里找到“Remote Java Application”。 右键菜单选择“New”创建一个配置。
3.新创建的配置的Project选择服务器上的工程。Host和Port分别填写你服务器的IP和JPDA的端口,默认是8000,或 者$JPDA_ADDRESS。
现在就可以像本机调试一样, 设置断点和跟踪调试了。
相关推荐
NC Eclipse 远程调试 NC Eclipse 远程调试是指在 Eclipse 集成开发环境中,使用 Java Debug Wire Protocol (JDWP) 实现远程调试 Java 应用程序的功能。JDWP 是一个基于 socket 的通信协议,用于在 debug 客户端和...
QT远程调试环境搭建是嵌入式开发中一个重要的环节,特别是在使用ARM开发板时,能够有效地帮助开发者在本地PC上调试运行在远程设备上的QT应用程序。以下是对整个过程的详细说明: 1. **网络配置**:首先,确保你的...
NC开发环境远程调试端口配置 NC开发环境远程调试端口配置是指在NC开发环境中配置远程调试端口,以便在开发过程中进行调试和故障排除。下面是相关的知识点: 一、运行环境配置 * 在NC开发环境中,需要在./nc...
MyEclipse作为一款强大的Java集成开发环境,提供了远程调试功能,使得开发者能够远程连接到运行在其他机器上的应用,进行实时的代码调试。下面我们将详细讲解MyEclipse远程调试的配置方法及其相关知识点。 1. **...
标题提及的文档主要介绍了如何使用PHPStorm进行远程调试基于Swoole扩展的Hyperf框架,同时提到了Swoft和Easyswoole等其他框架的远程调试方法。在这个过程中,文档强调了需要Linux环境,并提供了利用VirtualBox安装...
windchill 远程调试详细介绍 Windchill 是一种基于 Java 平台的开发环境,它提供了一个强大而灵活的远程调试机制。本文将详细介绍 Windchill 远程调试的配置和实现过程。 一、Windchill 远程调试概述 Windchill ...
在IT行业中,开发人员经常需要面对各种复杂的软件问题,这时候远程调试就显得尤为重要。本文将深入探讨如何在Eclipse集成开发环境中配置Windchill的远程调试环境,以便于高效地定位和解决代码中的问题。 首先,我们...
### Spring Boot 远程调试(Eclipse篇) #### 背景介绍 Spring Boot 是一个基于 Spring 框架的快速应用开发框架,它简化了 Spring 应用的初始搭建以及开发过程。在开发过程中,远程调试是一项非常重要的功能,尤其...
Eclipse远程调试教程 Eclipse 远程调试是指在 Eclipse 中对 Java 应用程序进行远程调试,通过配置 Tomcat 和 Eclipse,可以实现对远程服务器上的 Java 应用程序的调试。下面将详细介绍 Eclipse 远程调试的配置和...
### IDEA远程调试Java代码详解 #### 一、背景介绍 在进行软件开发的过程中,经常会遇到需要对部署在远程服务器上的程序进行调试的情况。传统的做法是在代码中添加日志输出语句来定位问题,但这不仅效率低下,而且...
### VS2008远程调试知识点详解 #### 一、VS远程调试的引入目的 远程调试技术对于软件开发过程中的故障排查具有重要意义。在实际应用中,经常遇到部署于服务器环境的应用程序出现难以通过日志定位的问题。这些情况...
VS2003远程调试包是Visual Studio 2003的一个重要组件,它允许开发者在本地计算机上编写代码,然后在远程计算机上进行调试。这个功能极大地扩展了开发环境的可能性,尤其对于需要在不同配置或者多台机器上测试应用...
### 远程调试方法参数配置详解 在进行Java应用程序开发过程中,远程调试是一项非常重要的技能。它可以帮助开发者在不直接访问目标机器的情况下,对运行在远程服务器上的Java应用进行调试。这种方式尤其适用于分布式...
VS2010 远程调试技术详解 VS2010 远程调试技术是指在 Visual Studio 2010 中实现对远程计算机上的程序进行调试的技术。这种技术可以帮助开发者在本地机器上调试远程机器上的程序,提高了开发效率和调试便捷性。 在...
Linux 下利用 Eclipse 与 GDBServer 远程调试代码 Linux 下远程调试是一种常见的调试方式,利用 Eclipse 和 GDBServer,可以实现远程调试程序。本文将详细介绍如何使用 Eclipse 和 GDBServer 进行远程调试。 一、...
《汇川调试助手:解锁物联网设备远程调试新篇章》 在当今的智能科技时代,物联网(IoT)设备的广泛应用使得远程监控与调试成为了一个至关重要的环节。汇川调试助手,这款专为IOT-WL430DE和IOT-WL430DK以及物联网屏...
### JAVAECLIPSE 下配置 WINDCHILL 远程调试详解 #### 一、配置概述 本文档旨在详细介绍如何在 JavaEclipse 环境下配置 Windchill 进行远程调试的过程。远程调试是指在一个主机上调试运行在另一台机器上的应用程序...
Spring Boot远程调试(Idea篇) Spring Boot远程调试是指在服务器上远程调试Spring Boot应用程序,而不需要在本地启动调试。这种方法可以提高开发效率,减少本地资源占用。在本文中,我们将使用Idea作为开发工具,...