平时自己开发用的电脑是Windows系统,测试环境一般是linux系统。由于系统环境的不同,有时会遇到在本地环境下程序能正常执行,而到了测试环境便歇菜的情况。为了方便解决这类问题,最好的办法还是能够远程调试服务器代码。整体来说,配置起来很容易,但冷不丁会遇到一些坑,本文主要对自己遇到的坑做个记录,作自己备忘,也为各位有类似经历的同学出坑作方便。
参考前人的经验,总结下来,配置主要分两步:
1、开启tomcat远程调试端口
2、使用IDE,我目前用的是Idea,debug模式连接该远程端口
具体步骤参看下面这篇文章
参考文档:http://blog.csdn.net/mhmyqn/article/details/49209541
一般来说,这样配置下来,基本就可以了。但是,像我,配置之后,启动idea调试,总是报“Unable to open debugger port (ip:8908): java.net.ConnectException "Connection refused: connect"”。
整理一下思路:idea已经提示是在连接debug端口的时候报的错,而且是网络问题,那这么说,idea已经知道要远程调试了,这边应该是没什么问题;既然是端口,会不会是第一步中tomcat的调试端口没有开启呢?如此,就查看tomcat启动日志,发现启动正常,而且“Listening for transport dt_socket at address: 8908”。看来,第一步应该也是成功了呀,怎么就是不能调试呢?
于是上网搜索,请求前辈。看到有人说可能是端口冲突,但是netstat -apn|grep 8908显示并没有。后来,终于在一个前辈的笔记中,找到了可能的问题原因及解决方法:linux环境的host文件,如果其中的“127.0.0.1 localhost”被删掉,调试程序就无法定位主机。我打开自己测试环境的host文件,却发现是有该句映射的,顿感失望;但其后有一些很奇怪的映射,于是有些怀疑是不是这些奇怪的东西导致“127.0.0.1 localhost”没有生效,便试着把这句映射移到了host文件末尾,然后重启tomcat,重新debug连接,调用接口测试。问题终于解决。
参考文档:http://blog.csdn.net/tjns8/article/details/51046504
后记:远程调试几次之后,又发现一个问题:idea首次debug启动之后,如果再次重启,就会又出现连接不上的情况。此时再将服务端tomcat重启一下就可以了。
相关推荐
标题中的“idea13远程服务器TOMCAT调试”指的是使用IntelliJ IDEA 13版本进行远程调试Tomcat服务器的应用程序。IntelliJ IDEA是一款强大的Java集成开发环境,而Tomcat是一个广泛使用的开源Web服务器和应用服务器,...
下面我们将详细讲解如何基于Idea进行远程调试Tomcat上的war包和jar包。 ### 一、war包方式 1. **配置Tomcat远程调试端口** 在Tomcat的`bin`目录下找到`catalina.bat`文件,添加以下行来开启远程调试: ```bash ...
Idea 远程调试和一键部署指南 Idea 远程调试是指服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码中设置断点,每当有请求到远程服务器时时能够在本地知道远程服务端的此时的内部状态。下面是使用 ...
1. IntelliJ IDEA 远程 debug 连接 Tomcat 实现单步调试的概念和原理 IntelliJ IDEA 是一款功能强大的集成开发环境(IDE),它提供了强大的调试功能,包括远程 debug 连接 Tomcat 实现单步调试。远程 debug 连接 ...
在Java开发过程中,远程调试是一项非常实用的功能,它允许开发者在不访问服务器本地环境的情况下,对...正确执行这些步骤后,开发者就可以在本地环境中轻松地调试远程服务器上的Java应用,提高问题定位和修复的效率。
### IDEA远程调试Java代码详解 #### 一、背景介绍 在进行软件开发的过程中,经常会遇到需要对部署在远程服务器上的程序进行调试的情况。传统的做法是在代码中添加日志输出语句来定位问题,但这不仅效率低下,而且...
对于Java后端开发者来说,使用IntelliJ IDEA(简称IDEA)进行SpringBoot项目的远程调试是一种常见的需求。下面详细讲解如何使用IDEA远程调试SpringBoot项目。 首先,要开始远程调试,需要在远程服务器上运行Java...
Spring Boot远程调试(Idea篇) Spring Boot远程调试是指在服务器上远程调试Spring Boot应用程序,而不需要在本地启动调试。这种方法可以提高开发效率,减少本地资源占用。在本文中,我们将使用Idea作为开发工具,...
IDEA远程调试 IDEA远程调试是指在IntelliJ IDEA中对Java项目进行远程调试的过程。远程调试是基于不同的JVM可通过接口的协议联系,让本地的Java文件与远程JVM建立联系和通信的原理。下面将详细介绍IDEA远程调试的...
本文将详细探讨在两种流行的IDE——IntelliJ IDEA和Eclipse中进行远程调试的步骤和设置方法。 ### 1. TOMCAT远程调试配置 TOMCAT是Apache基金会下的一个开源Web应用容器,广泛应用于Java Web应用部署。要启用...
总之,Idea Tomcat Runner插件是针对IntelliJ IDEA社区版用户的一个强大工具,它弥补了社区版未集成Tomcat的不足,让开发者能够更加高效地进行Java Web应用的开发和调试。如果你是社区版IDEA的使用者,并且经常需要...
在使用IntelliJ IDEA 2017配置JSP以及Tomcat服务器的过程涉及到多个步骤和知识领域。首先,JSP(Java Server Pages)是一种用来开发动态网站的技术,它能够让开发者在HTML中嵌入Java代码。而Tomcat是一个开源的Web...
有时,开发者可能需要在IDEA中运行或调试使用旧版本Java或Tomcat的项目。"用于idea适配低版本的tomcat"表明这个压缩包提供了在IntelliJ IDEA中配置和使用Tomcat 6的兼容性支持,这对于维护老项目或者学习历史技术栈...
Windchill 远程调试是指在 Windchill 开发环境中,使用 Java 平台调试器(JPDA)来调试远程服务器上的 Java 应用程序。JPDA(Java Platform Debugger Architecture)是 Java 平台上的调试器定义的标准体系结构,它...
### IDEA远程调试Java Web应用详解 #### 背景介绍 在开发Java Web应用程序时,尤其...通过以上步骤,开发者可以在本地环境中高效地调试远程服务器上的Java Web应用,这对于快速定位问题、提高开发效率具有重要意义。
标题中的“工作日志:远程调试的方法(Tomcat与JDPA)”指的是一种常见的Java开发技术,用于在远程服务器上进行程序调试。这通常涉及到使用Apache Tomcat这样的Java应用服务器以及Java Debug Wire Protocol (JDWP)。...
本文主要介绍了如何使用集成开发环境IntelliJ IDEA (IDEA)进行远程Debug调试Tomcat服务器,这对于解决线上问题和优化代码效率非常有帮助。以下是详细的步骤和注意事项: 首先,我们需在Tomcat的运行环境中进行配置...
本文将详细讲解如何修改Tomcat以支持远程调试,并提供在Windows和Unix环境下启动远程调试的步骤。 首先,为了启用Tomcat的远程调试功能,我们需要在Tomcat的配置文件中进行一些改动。这个配置文件通常是`$CATALINA_...
本文将详细介绍一种经过实战验证的远程Tomcat调试方法,适用于JDK1.8、Tomcat 9.0.8、IntelliJ IDEA 2023(Ultimate版)及Windows 10操作系统。该方法已经过验证,可以有效地避免常见的“Unable to connect to the ...
【IDEA2017_导出war教程】 在Java Web开发中,IDEA(IntelliJ IDEA)是一款广泛使用的集成开发环境,它提供了强大的功能来支持开发者进行编码、调试和部署应用程序。对于需要将项目部署到传统的Java应用服务器,如...