辽宁鞍山网站建设公司,购买网站模板怎么用,杭州建立网站,搜索引擎优化包括以下哪些内容Eclipse远程调试 Java自身支持调试功能#xff0c;并提供了一个简单的调试工具#xff0d;#xff0d;JDB#xff0c;类似于功能强大的GDB#xff0c;JDB也是一个字符界面的调试环境#xff0c;并支持设置断点#xff0c;支持线程线级的调试。
由于部署环境的差异性并提供了一个简单的调试工具JDB类似于功能强大的GDBJDB也是一个字符界面的调试环境并支持设置断点支持线程线级的调试。
由于部署环境的差异性都碰到过开发环境正常测试过的功能在测试环境甚至生产环境下出现bug的情况。一般情况下生产环境可以采取的手段比较单一即通过日志的方式获取运行中的环境上下文分析日志文件并尝试重现bug。这会带来的问题还是不少的首先日志的分析是一项比较耗时的工作其次现有的日志记录不一定能反映出问题可能需要多次重复这个过程(分析日志-猜测问题-加日志-部署-获取日志)来慢慢逼近问题。倘若是测试环境还多了一项可供选择的手段——远程调试——将程序在测试环境中以debug模式启动在本机使用Eclipse在工程中设置断点进行调试。
【具体步骤】 修改服务器启动参数
在服务器上的进程启动参数中添加
-Xdebug -Xrunjdwp:transportdt_socket,address6666,servery,suspendn
连接到myhost:6666提供的调试服务。
-Xdebug通知JVM工作在DEBUG模式下
-Xrunjdwp通知JVM使用(Java debug wire protocol)运行调试环境。该参数同时包含了一系列的调试选项
transport指定了调试数据的传送方式
dt_socket是指用SOCKET模式
servery/n VM 是否需要作为调试服务器执行
suspendy/n 是否在调试客户端建立连接之后启动 VM 。
设置完成后启动服务端。
2. 启动本地代码
设置 Debug configurations--Remote Java Application 注意在点击【Debug】按钮之前一定不要多次“启动本地程序”否则就会出现Failed to connect to remote VM. Connection refused异常如下图所示 3. 调试远程客户端
点击【Debug configurations】中的debug按钮运行效果如下接下来就和本地调试一模一样了。在调试过程中日志打印在远程服务器本地console中看不到日志信息。调试的时候需要一个Http客户端发起请求比如postman等等。 条件断点 如果需要对循环中的数据进行调试使用条件断点是个不错的选择。将断点设置在指定的位置上右键进一步设置断点属性如下 调试时程序会中断在符合条件的代码处。 异常断点 断点不仅可以设置在某一行也可以针对整个工程进行设置。假设知道程序会在某个地方抛出NullPointerException可是并不是每一次运行都会出现就可以为工程设置异常断点如下 总结 对于使用Eclipse进行日常编程工作的程序员调试是每天都在进行的工作。Eclipse提供的远程调试功能有时也是一个比较实用的高级功能。