Eclipse工具有自带的调试远程Java项目的功能。
当然,使用Eclipse远程调试工具的前提是远程的Java项目需要支持远程调试。
这里我们以远程调试Tomcat容器中的JavaEE项目为例。纯Java项目也是同样的道理。
这里我们需要使用JPDA(JavaTM Platform Debugger Architecture),从J2SE1.4.2就已经设计并实现了这种体系结构。
JPDA体系结构又包括3个主要组成部分:JVM TI、JDI和JDWP。
其中JVM为Java Virtual Machine Tool Interface,JDI为Java Debug Interface,JDWP为Java Debug Wire Protocol
在启动远程的Java项目,我们需要加入参数
-Xdebug -Xrunjdwp:transport=dt_socket, address=8000,server=y,suspend=y
其中address为远程调试的端口,与项目本身占用的端口不是同一个;suspend为在程序程序时,是否挂起,等级远程调试工具连接后,再继续。如果不想因为调试而影响项目的正常启动,就将suspend设置为n。
对于Tomcat容器,我们只要在容器启动时,说明使用JPDA即可。
编辑Tomcat窗口的启动脚本startup.sh(Window用户为startup.bat)
在将最后一行
exec "$PRGDIR"/"$EXECUTABLE" start "$@"
改为
exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@"
这样,通过startup.sh启动Tomcat容器时,就开始监听8000端口,等待远程调试工具通过8000端口接入。这时我们可以通过Eclipse的远程调试工具通过8000端口进行调试。
如果8000端口已经被占用,想换个端口,或不想让Tomcat等待远程调试工具的接入而直接启动完毕,那我们就到catalina.sh中设置参数
JPDA_ADDRESS=8765 JPDA_TRANSPORT=dt_socket JPDA_SUSPEND=n
这样,我们就改用了8765端口做为远程调试端口;使用SOCKET方式进行通信;当未连接远程调试工具时,程序不再掛,而是直接继续执行。
通过以上设置后,startup.sh启动Tomcat,这时Tomcat就支持远程调试了。
下面简单说一下eclipse远程调试工具的设置
菜单Run-Debug Configurations...或工具栏中debug图标旁的下三角-Debug Configurations...
双击“Remote Java Application”,新建一个远程配制。
Project为服务器上的项目,Host为服务器IP,Port为上面设置的JPDA_ADDRESS端口,Apply,Debug
然后,在源码中的某处设置断点,当服务器上的程序执行到这个位置时,本地的Eclipse就停在该断点处,可以进行调试。
参考文档:
相关推荐
接着,你可以运行"Eclipse"文件来启动IDE,然后根据个人需求配置工作空间,导入或创建新的Java或JavaEE项目。 为了充分利用Eclipse的JavaEE功能,你还需要配置Eclipse以连接到本地或远程服务器。这可以通过Eclipse...
在部署JavaWeb应用到Tomcat 9.0时,Eclipse允许开发者直接将项目发布到本地或远程的Tomcat服务器上。只需右键点击项目,选择“发布”选项,Eclipse会自动处理应用的打包和部署过程,将其放入Tomcat的webapps目录下。...
10. **测试与调试**:JUnit和TestNG是Java单元测试的常用工具,而远程调试工具如Eclipse或IntelliJ IDEA的远程调试功能,以及日志框架如Log4j,都是开发过程中不可或缺的辅助手段。 以上就是关于"JavaEE框架技术aa...
5. **调试工具**:强大的调试器可以对Java EE应用进行多线程、远程和并发调试。 6. **Git集成**:内置Git版本控制系统,便于团队协作和代码管理。 7. **插件扩展**:Eclipse的开放性允许用户安装各种第三方插件,...
Eclipse Luna是Eclipse IDE的一个特定版本,专为Java Enterprise Edition (JavaEE) 开发而设计。Luna是Eclipse的第四个主要发行版,它提供了丰富的开发工具和功能,支持包括Web、企业应用程序和移动应用程序在内的...
在使用Eclipse进行Java EE开发时,你可以创建Web项目,使用内置的Tomcat或Jetty服务器进行本地调试,编写Servlet、JSP和JavaBean,利用JPA进行持久化操作,通过JMS进行消息传递,还可以通过WSDL和SOAP进行Web服务的...
MyEclipse、Eclipse作为常用的Java开发IDE,它们提供了代码编辑、调试、重构等功能,极大地便利了开发过程。SVN作为版本控制系统,确保了代码版本的管理和历史记录的追溯。 项目经验是检验开发者技术水平的重要标准...
此外,Eclipse的Debug视图使得远程和本地调试变得轻松,能直观地查看和修改变量值、设置断点以及跟踪调用堆栈。 在Eclipse中,开发者可以创建Maven或Gradle项目,这些构建工具可以帮助管理依赖关系并自动化构建过程...
4. **部署和运行**:你可以将项目部署到本地或远程服务器,如Tomcat或WebLogic,通过内置的服务器视图进行配置和启动。 ### 六、总结 Eclipse 3.2.1及其插件的安装与使用是J2EE开发的必备技能。通过深入理解和实践...
1. **基础环境搭建**:讲解如何安装JDK、配置环境变量,以及设置JAVAEE开发工具,如Eclipse或IntelliJ IDEA,以及如何配置Tomcat或Glassfish等应用服务器。 2. **Servlet编程**:介绍Servlet生命周期,包括初始化、...
13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...
- 集成的调试工具:支持远程调试、多线程调试等,方便开发者追踪和解决问题。 - 数据库管理和查询工具:通过内置的Database Explorer可以轻松地管理数据库表结构、执行SQL语句等。 ### 2. 安装配置MyEclipse及其...
13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...
13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...
13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...
在这个项目中,Eclipse可能作为开发工具,帮助开发者编写、调试和测试代码。 6. **数据库管理**:MySQL是一种关系型数据库管理系统,适用于处理大量数据。在故障管理系统中,MySQL用于存储设备信息、故障记录、解决...
开发工具的选择同样重要,Eclipse、NetBeans、IntelliJ IDEA等都是优秀的Java IDE,它们提供了代码编辑、调试、构建等功能,极大地提高了开发效率。 #### 四、应用部署与配置:Tomcat中的webapps目录 在Tomcat中,...
Eclipse是一款流行的Java集成开发环境,提供了代码编辑、调试、构建和部署等功能。在Linux环境下,Java程序的开发和部署也需要对操作系统的理解和熟悉。 2. **Java语法基础**:Java是一种面向对象的语言,其基础...
BlazeDS是一个Adobe提供的实时数据和远程调用解决方案,它可以作为Flex和Java之间的桥梁,实现双向数据流和远程过程调用。利用BlazeDS,Flex客户端可以订阅Java服务器上的事件,实时获取更新数据,同时也可以调用...
1. **Remoting Service(远程服务)**:使Flex应用程序能够直接调用部署在应用服务器中的Java对象的方法。这提供了与后端业务逻辑的直接交互,使得前端展示层能够灵活地获取和更新后端数据。 2. **Message Service...