一、普通java应用远程调试配置
1.在运行Java项目的远程服务器上的运行脚本中加入以下设置参数:
java -Xms700m -Xmx700m -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,
address=9999,server=y,suspend=n demo.jar
2.在本地的eclipse中 Debug(小蜘蛛图标)>Debug Configuration...>Remote Java Application>New下创建一个远程调试的项目并设置相关参数
二、web应用远程调试配置
Tomcat:
在catalina.bat文件中加入下面这句SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6681 不过要注意在Linux下,有一点点差异,是要编辑catalina.sh文件。而且要改成这样:CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5888"也就是把SET去掉,后面加双引号引起来,因为在Linux下,是没有SET这个语法的
Weblogic:
在startWebLogic.bat加上:set JAVA_OPTIONS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
openfire:
启动脚本中添加:
# Debug options
DEBUG_OPTS="-Xdebug -Xnoagent -
Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
# Lastly, prepare the full command that we are going to run.
OPENFIRE_RUN_CMD="${JAVACMD} -server
${DEBUG_OPTS} ${OPENFIRE_OPTS} -classpath
\"${LOCALCLASSPATH}\" -jar \"${OPENFIRE_LIB}/startup.jar\""
was:
(一):配置 WAS,打开调试服务
进到 WAS(或ND) 的管理控制台,在服务器->应用程序服务器中,点击要启用调试服务的应用服务器,然后进入调试服务,勾选上启动(指定当服务器启动时服务器是否将尝试启动指定的服务。)。JVM 调试端口默认为 7777,注意该端口不能有冲突(如有多个应服务器要启用调试服务时,需要指定别的端口)。其他选项默认,或根据实际来设定。
确定、保存后重启应用服务器,WAS Base 版需要回到操作系统下重启,如果是在 ND 管理控制台下,可直接在页面中重启应用服务器。
(二):配置 Eclipse,使用远程调试
Eclipse 的菜单 Run -> Open Debug Dialog 窗口中,右击 Remote Java Application->New,在右方的 Conect 标签页中,选择你要调试的Project(即发布到 WAS 下启用了调试服务的,在你的 Eclipse 中存在的项目),Host 填上 WAS 服务器的 IP,Port 就是前面的 JVM 调试端口。其他两个标签页 Source/Common 可留意下。
点击 Debug 按钮,这时候 Eclipse 即处理于侦听 WAS 服务器的 JVM 调试端口的状态。
netstat -an | grep 端口号 来检验下是不是已经打开了某某端口
附:
-XDebug 启用调试。
-Xnoagent 禁用默认sun.tools.debug调试器。
-Djava.compiler=NONE 禁止 JIT 编译器的加载。
-Xrunjdwp 加载JDWP的JPDA参考执行实例。
transport 用于在调试程序和 VM 使用的进程之间通讯。
dt_socket 套接字传输。
dt_shmem 共享内存传输,仅限于 Windows。
server=y/n VM 是否需要作为调试服务器执行。
address=3999 调试服务器的端口号,客户端用来连接服务器的端口号。
suspend=y/n 是否在调试客户端建立连接之后启动 VM 。
分享到:
相关推荐
### Java远程调试操作步骤 #### 一、准备工作 在进行Java远程调试之前,我们需要完成一些必要的准备工作,确保环境配置正确。 ##### 1.1 安装JCE无限制策略文件 根据描述中的“下载UnlimitedJCEPolicyJDK8”,这...
如果你发现你的代码在本地运行良好,但是一旦上测试环境、预发布环境或生产环境就出现问题,那么可以执行JAVA远程调试,以彻底搞清楚为什么一上生产环境就会出现问题,本教程就是介绍如何实现JAVA远程调试,即如何在...
### Java远程调试详解 在软件开发领域,尤其是大型分布式系统或微服务架构中,Java远程调试是一项关键技能,它允许开发者在本地机器上调试运行在远程服务器上的Java应用程序,极大地提高了问题定位和解决效率。本文...
根据提供的文件信息,我们可以深入探讨Java远程调试的相关知识点。标题提到的是“java远程调试一个朋友推荐”,这表明文章主要关注的是如何通过特定的技术或工具来进行Java应用的远程调试。描述部分进一步强调了这一...
Java远程调试是一项强大的技术,它允许开发者在不同的设备或服务器上对Java应用程序进行调试,而无需实际坐在该设备前。这份“Java远程调试PPT”深入浅出地讲解了这一主题,包括JVM的调试模型、Eclipse的调试技巧、...
在IT行业中,开发人员经常需要面对复杂的问题,这时远程调试技术就显得尤为重要。... 首先,让我们了解一下什么是远程...通过阅读《PHP,Java远程调试教程.docx》这份文档,相信你会得到更具体的步骤指导和实践经验分享。
### JAVA远程调试详解 在开发过程中,特别是在分布式系统或微服务架构中,远程调试成为解决复杂问题的关键技术之一。本文将详细介绍如何通过JAVA进行远程调试,包括配置环境、启动调试服务器以及连接远程调试客户端...
解决Failed to connect to remote VM com.sun.jdi.connect.spi.ClosedConnectionException错误,tomcat远程调试
以下将详细介绍如何进行Java远程调试以及在远程服务器上设置断点。 首先,理解远程调试的基本原理是关键。Java提供了Java Debug Wire Protocol (JDWP) 来支持远程调试。JDWP是一个协议,使得调试器能够与Java虚拟机...
本文将详细解释远程调试方法中的参数配置,尤其是针对使用Tomcat服务器进行Java远程调试的情况。 #### 远程调试基本概念 远程调试是指通过网络连接,在本地计算机上控制并调试运行在远程服务器上的程序。这种方式...
NC Eclipse 远程调试是指在 Eclipse 集成开发环境中,使用 Java Debug Wire Protocol (JDWP) 实现远程调试 Java 应用程序的功能。JDWP 是一个基于 socket 的通信协议,用于在 debug 客户端和服务器之间传输调试信息...
### JAVAECLIPSE 下配置 WINDCHILL 远程调试详解 #### 一、配置概述 本文档旨在详细介绍如何在 JavaEclipse 环境下配置 Windchill 进行远程调试的过程。远程调试是指在一个主机上调试运行在另一台机器上的应用程序...
本篇文章将详细讲解如何在Eclipse中设置和使用远程调试Java代码。 首先,我们需要理解远程调试的基本原理。远程调试允许开发者在本地IDE上对运行在另一台机器上的应用程序进行调试。这通常通过JVM的远程调试接口...
### Java开发环境Eclipse远程调试端口配置 #### 运行环境配置 为了实现Java Eclipse远程调试功能,首先需要确保本地开发环境与远程服务器环境之间的兼容性和一致性。具体步骤如下: 1. **运行ncSysconfig命令**:...
MyEclipse作为一款强大的Java集成开发环境,提供了远程调试功能,使得开发者能够远程连接到运行在其他机器上的应用,进行实时的代码调试。下面我们将详细讲解MyEclipse远程调试的配置方法及其相关知识点。 1. **...
配置Java运行参数,以便在远程调试中使用。 * 例如,配置-Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:8999的参数,其中IP和端口号可以根据需要修改。 四、WAS环境开远程调试方法 * 在WAS环境中,...
Windchill 是一种基于 Java 平台的开发环境,它提供了一个强大而灵活的远程调试机制。本文将详细介绍 Windchill 远程调试的配置和实现过程。 一、Windchill 远程调试概述 Windchill 远程调试是指在 Windchill 开发...
默认的Java远程调试端口通常是8000或8001,但实际使用中可能需要根据服务器配置进行调整。 2. **断点(Breakpoint)**:断点是调试的关键,它允许程序在特定行暂停执行,这样开发者就可以检查此时的变量值、调用栈...
通常,这样的脚本会包含Java命令行参数,如`-Xdebug`和`-Xrunjdwp`,这些参数是开启Java远程调试所必需的。例如: ```bat set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n `...
Java调试是开发者日常工作中不可或缺的一部分,它涉及到对代码的深入理解和问题排查能力。在Java编程过程中,遇到程序出错或运行异常时,调试是找出问题源头的关键步骤。本文将详细介绍Java调试的一些核心技术和方法...