文档章节

MyEclipse的远程调试

Miss_Hello_World
 Miss_Hello_World
发布于 2015/02/26 09:28
字数 2122
阅读 17
收藏 0
点赞 0
评论 0

注意:此功能在MyEclipse 2015中被重新设计,目前是不可用的。

1. 简介

这是一个关于讨论配置和调试在应用程序服务器上运行而不使用MyEclipse服务器启动连接器的应用程序的高级教程,无论MyEclipse是在同一台计算机上运行或是在不同的计算机上运行都可。对于一般易于配置和调试的应用程序,强烈建议MyEclipse服务连接器可用于应用服务器中的所有服务器操作详细教程。在执行本教程之前,请仔细阅读它。

有时候可能使用MyEclipse的连接器来启动应用程序服务器是不方便的。例如,你可能需要对集成开发环境中的实例进行远程调试;或者你的服务器启动脚本可能被修改或决定将其作为开发过程的一部分,所以你根本不可能改变外部服务器的管理措施,最后MyEclipse可能根本不支持你需要特定调试的服务器。如果你正在面临这样一些问题,本教程将会告诉你如果做到以下几点:

  • 配置你的服务器进行远程调试
  • 将应用程序部署到服务器
  • 使用自定义的Eclipse启动配置你的服务器进行通信
  • 在所有服务器上调试你的Java代码
  • 调试JSR-045中的JSP兼容服务器

2. 配置服务器的远程调试

要用MyEclipse来调试你的外部启动服务器,你需要配置应用程序,然后启动服务器来使外部调试器通过JPDA能够控制它。本节介绍如何配置任意应用服务器来进行远程调试,同时提供了几个具体实例来说明服务器的基础知识。

要配置一个Java应用程序(包括服务器)来用于远程调试,那么一些额外的Java虚拟机选项必须指定。所以远程调试选项的完整文档以及定义和实例,可以直接从Sun公司获取。总之,虚拟机必须知道启动调试的模式和监听一个特定端口的调试器连接。所需要的命令行选项实例如下所示。

调试选项 选项说明
-Xdebug 启用调试
-Xrunjdwp:  这些选项运行JDWP调试:
transport=dt_socket, 使用套接字通信
address=8000, 监听端口8000的调试器连接
server=y,  监听一个应用程序的调试器连接
suspend=n 不要让调试器在调试前等待继续连接
2.1 WebLogic服务器

根据你的操作系统平台,启动一个weblogic.cmd或startweblogic.sh脚本,作为从命令行启动的一个应用实例。该脚本读取名为JAVA_OPTIONS的环境变量,并添加specifed作为启动WebLogic调用脚本时的参数设置。在Windows中,这是可以通过打开cmd.exe并发出以下命令做到的:

cd serverbin

setJAVA_OPTIONS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

.startWebLogic.cmd

用你的BEA主文件夹的实际位置上面的路径来替换,其他版本的WebLogic可以以类似的方式来启动。服务器已经完全启动之后,它可以被连接和控制到MyEclipse中,如第3节中所描述的那样。

2.2 Tomcat服务器

根据你的操作系统平台,调用一个名为catalina.bat或catalina.sh脚本,用来在命令行中启动Tomcat实例。当在调试模式下启动时,脚本将读取JPDA_TRANSPORT和JPDA_ADDRESS两个环境变量,并添加specifed用来启动Tomcat的参数设置。在Windows中,这是可以通过打开cmd.exe并发出以下命令做到的:

cd bin
set JPDA_TRANSPORT=dt_socket
set JPDA_ADDRESS=8000
catalina.bat jpda start

用Tomcat安装文件夹的实际位置上面的路径来替换,其他版本的Tomcat可以以类似的方式来启动。服务器已经完全启动之后,它可以被连接和控制到MyEclipse中,如第3节中所描述的那样。

2.3 Sun Java系统应用服务器8. x版

根据你的操作系统平台,调用一个名为asadmin.bat或asadmin.sh的脚本,用来在命令行中启动Sun Java系统应用服务器第8版本实例。如果你的服务器域名启动后,名为domain.xml的配置文件将被读取。domain.xml中包含可以手动设置启动远程调试的其他JVM启动选项,编辑domain.xml文件,如下图所示,然后启动服务器并以管理员命令启动远程调试。

MyEclipse的远程调试
编辑domain.xml能够进行远程调试

当服务器完全启动之后,它可以被连接和控制到MyEclipse中,如第3节中所描述的那样。

2.4 JBoss服务器

根据你的操作系统平台,调用一个run.bat或run.sh的脚本,作为从命令行启动的一个JBoss实例。该脚本读取名为JAVA_OPTS的环境变量,并添加指定用于启动JBoss调用脚本时的参数设置。在Windows中,这是可以通过打开cmd.exe并发出以下命令做到的:

cdbin
setJAVA_OPTS=-Xdebug-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
.run.bat

用JBoss安装文件夹的实际位置上面的路径来替换,其他版本的JBoss可以以类似的方式来启动。服务器已经完全启动之后,它可以被连接和控制到MyEclipse中,如第3节中所描述的那样。

3. 部署到远程服务器

MyEclipse中提供了一个集成的部署管理工具,在开发系统时可以包装和部署你的应用程序的任何文件系统。应用程序部署的基础知识都在Web开发与企业发展快速入门中有述,因为这是一个高级教程,假设你很熟悉这些教程详细的部署操作。

当部署到一个标准的MyEclipse启动应用服务器时,部署位置是通过基于服务器类型和部署方法选择的MyEclipse自动设置。用于远程服务器部署的,有一个"" 服务器类型,其允许部署位置的完整规范。

MyEclipse的远程调试
指定远程部署位置

配置完成之后,远程部署的表现和标准配置一样,所以分解部署和项目资源的变化继续自动同步。请记住,因为你要部署到自定义位置,所以你有责任确保你的应用程序服务器加载的是所选位置的应用程序。

当应用程序部署和服务器远程调试配置好以后,你可以随时启动服务器。

4. 调试远程服务器

MyEclipse中提供了一个特殊的调试启动配置—MyEclipse外部启动服务器,专门为连接远程应用服务器和支持完整的应用程序调试而设计。为你的外部服务器创建一个启动配置,单击调试工具栏上相应图标的下拉箭头,然后选择调试配置菜单。

打开调试配置窗口,选择MyEclipse外部启动服务器,然后单击新建启动配置图标,创建用于连接到应用服务器的调试启动配置。

MyEclipse的远程调试
创建一个新的远程调试配置

下图显示了一个JBoss 4的远程调试配置示例,任何服务器的设置类似。

MyEclipse的远程调试
JBoss示例的配置

当源查找路径默认为你的调试项目时,你可以从配置的源页面添加其他源查找的位置。

MyEclipse的远程调试
配置源查找路径

在配置了新的启动配置后,如果你的远程服务器已经运行并监听调试连接,你可以关闭它以后使用单击"调试"按钮。应用程序服务器和外部调试配置被启动后,一个新的调试进程将在调试视图中显示。

注意:调试视图不会自动显示,因此你需要换到调试的视角来看,或手动打开查看。

MyEclipse的远程调试
连接到外部调试服务器

此时,如果你使用内置的MyEclipse服务连接器来启动一个本地的服务器时,调试应用程序会是一样的。

MyEclipse官方中文网上线,欢迎下载交流!

© 著作权归作者所有

共有 人打赏支持
Miss_Hello_World
粉丝 15
博文 593
码字总数 350067
作品 0
九龙坡
MyEclipse 8.6.1 制作绿色版

我们先在这个目录下新建一个文件: MyEclipse 10.6.bat , 文件内容如下: start eclipseeclipse.exe -vm jrebinjavaw.exe 接下来只需要改一个Eclipse 插件的配置文件就可以实现绿色版运行了, 我...

thinkyoung ⋅ 2014/11/16 ⋅ 0

初学Python,对于开发工具不是很了解?一文带你选择适合你的开发工具

工欲善其事必先利其器! 开发Python用什么工具好呢?其实刚学Python的话,使用IDLE就够了,虽然调试不是特别方便,但是对于初学已经够了,可以使用Print进行简单的调试,不建议使用记事本进行...

柯西带你学编程 ⋅ 06/01 ⋅ 0

填坑系列之Mac下破解MyEclipse2017

网上各大论坛有很多关于MyEclipse破解的教程,但是亲自实践后发现,大部分都是基于windows的,很多直接复制粘贴,号称是在Mac下安装的,导致按照教程会破解不成功。 接下来,本文会根据实际操...

充电实践 ⋅ 04/22 ⋅ 0

转 Myeclipse 2017 安装与破解

一、下载 Myeclipse官网下载地址:http://www.myeclipsecn.com/download/ 百度云链接(含破解):链接:http://pan.baidu.com/s/1pKCQLJ1 密码:v2jw(如果这个链接失效,新的链接在文章最底下...

1024菜bird ⋅ 06/13 ⋅ 0

MyEclipse使用总结——MyEclipse10安装SVN插件

一、下载SVN插件subclipse 下载地址:http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 在打开的网站中找到subclipse的最新版本,如下图所示: 下载完成之后,得到的...

thinkyoung ⋅ 2014/12/14 ⋅ 0

Myeclipse普通工程转为Maven工程

在SVN导出的Maven项目,或以前不是用Maven管理的项目想要转换成Maven项目,但Myeclipse中右键Configure 找不到(eclipse可行)Convert to maven project选项,因此需要如下设置: Window > Pre...

进击的悠然 ⋅ 2016/04/28 ⋅ 0

myeclipse集成activiti-designer

第一次发布文章,也算是一个测试~ 使用工具:activiti-designer-5.15.0 + myeclipse2014 activiti-designer-5.15.0下载地址 http://down.51cto.com/data/1876002 集成方法: 1、解压designe...

qq5b0fd66864347 ⋅ 昨天 ⋅ 0

同一个servlet在myeclipse中正常在tomcat中中文乱码

写了一个servlet程序,打印html文件的input输入到控制台,在myeclipse中中文打印正常,导出部署在tomcat上后中文乱码。 读取input参数做了下面的转化: new String(request.getParameter("u...

changlianggao ⋅ 05/06 ⋅ 0

MyEclipse教程:使用UML创建模块库——第一部分(二)

MyEclipse 在线购买低至75折!火爆开抢>> 【MyEclipse最新版下载】 UML1建模文件存储在建模库中,建模可用于生成Java代码,或者可以从代码中生成模型。本教程将向您展示如何执行与建模资源库...

Miss_Hello_World ⋅ 05/23 ⋅ 0

新建一个兼容eclipse和myeclipse、IDEA都兼容的项目结构(maven)

以下观点为个人理解,没实践过,后续再实现。 思路: 1、eclipse和myeclipse、IDEA这些开发工具新建的各自的项目时,都有自己的一套思路,项目结构都有各自的特点。 2、如果是这些开发工具互...

easonjim ⋅ 2017/01/09 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

eclipse酷炫大法之设置主题、皮肤

eclipse酷炫大法 目前两款不错的eclipse 1.系统设置 Window->Preferences->General->Appearance 2.Eclipse Marketplace下载【推荐】 Help->Eclipse Marketplace->搜索‘theme’进行安装 比如......

anlve ⋅ 昨天 ⋅ 0

vim编辑模式、vim命令模式、vim实践

vim编辑模式 编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入 如何进入编辑模式 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样 i ...

蛋黄Yolks ⋅ 昨天 ⋅ 0

大数据入门基础:SSH介绍

什么是ssh 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码...

董黎明 ⋅ 昨天 ⋅ 0

web3j教程

web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 汇智网最新发布的web3j教程,详细讲解...

汇智网教程 ⋅ 昨天 ⋅ 0

谷歌:安全问题机制并不如你想象中安全

腾讯科技讯 5月25日,如今的你或许已经对许多网站所使用的“安全问题机制”习以为常了,但你真的认为包括“你第一个宠物的名字是什么?”这些问题能够保障你的帐户安全吗? 根据谷歌(微博)安...

问题终结者 ⋅ 昨天 ⋅ 0

聊聊spring cloud gateway的RedisRateLimiter

序 本文主要研究下spring cloud gateway的RedisRateLimiter GatewayRedisAutoConfiguration spring-cloud-gateway-core-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/gateway/con......

go4it ⋅ 昨天 ⋅ 0

169. Majority Element - LeetCode

Question 169. Majority Element Solution 思路:构造一个map存储每个数字出现的次数,然后遍历map返回出现次数大于数组一半的数字. 还有一种思路是:对这个数组排序,次数超过n/2的元素必然在中...

yysue ⋅ 昨天 ⋅ 0

NFS

14.1 NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本 NFS数据传输基于RPC协议,RPC...

派派菠菜 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部