- 浏览: 171954 次
- 性别:
- 来自: 北京
最新评论
-
chainhou:
sunshineman 写道maven 编译不过啊,连不上ec ...
jetty的下载,编译,安装等 -
sunshineman:
maven 编译不过啊,连不上eclipse的proxy
jetty的下载,编译,安装等
首先,JAVA自身支持调试功能,并提供了一个简单的调试工具--JDB,类似于功能强大的GDB,JDB也是一个字符界面的
调试环境,并支持设置断点,支持线程线级的调试。
JAVA的调试方法如下:
1。首先支持JVM,并设置参数,使之工作在DEBUG模式下,加入参数:-Xdebug -Xrunjdwp,transport=dt_socket,server=y,address=5432,suspend=n,onthrow=java.io.IOException,launch=/sbin/echo
其中,-Xdebug是通知JVM工作在DEBUG模式下,-Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:
transport指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows平台。
server参数是指是否支持在server模式的VM中.
onthrow指明,当产生该类型的Exception时,JVM就会中断下来,进行调式。该参数可选。
launch指明,当JVM被中断下来时,执行的可执行程序。该参数可选
suspend指明,是否在调试客户端建立起来后,再执行JVM。
onuncaught(=y或n)指明出现uncaught exception 后,是否中断JVM的执行.
虚拟机参数设置
1.启用调试服务
-Xdebug 启用调试
-Xrunjdwp:<sub-options> 加载JVM的JPDA参考实现库
2.Xrunjdwp子参数(sub-options)配置
Xrunjdwp子参数的配置格式如下
-Xrunjdwp:<name1>[=<value1>],<name2>[=<value2>]...
几个例子
-Xrunjdwp:transport=dt_socket,server=y,address=8000
在8000端口监听Socket连接,挂起VM并且不加载运行主函数直到调试请求到达
-Xrunjdwp:transport=dt_shmem,server=y,suspend=n
选择一个可用的共享内存(因为没有指address)并监听该内存连接,同时加载运行主函数
-Xrunjdwp:transport=dt_socket,address=myhost:8000
连接到myhost:8000提供的调试服务(server=n,以调试客户端存在),挂起VM并且不加载运行主函数
-Xrunjdwp:transport=dt_shmem,address=mysharedmemory
通过共享内存的方式连接到调试服务,挂起VM并且不加载运行主函数
-Xrunjdwp:transport=dt_socket,server=y,address=8000,
onthrow=java.io.IOException,launch=/usr/local/bin/debugstub
等待java.io.IOException被抛出,然后挂起VM并监听8000端口连接,在接到调试请求后以命令/usr/local/bin/debugstub dt_socket myhost:8000执行
-Xrunjdwp:transport=dt_shmem,server=y,onuncaught=y,launch=d:\bin\debugstub.exe
等待一个RuntimeException被抛出,然后挂起VM并监听一个可用的共享内存,在接到调试请求后以命令d:\bin\debugstub.exe dt_shmem <address>执行,<address>是可用的共享内存
2。启动调试工具。
最简单的调试工具就是上面提到的JDB,以上述调试用JVM为例,可以用下面的命运行启动JDB:
jdb -connect com.sun.jdi.SocketAttach:port=5432,hostname=192.168.11.213
另外,还有好多的可视化调试工具,如 eclipse,jsawt等等。Eclipses可用 ant debug来建立一个调试方法。
其实就是使用了JDK的JPDA,在启动服务器(Jboss或者Tomcat等)的命令行参数里面加上:
-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
Java远程调试
-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,address=3999,suspend=n
-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 。
Resin:
RESIN_HOME\bin\httpd.exe -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n
Tomcat:
在catalina.sh/bat 的最上面加上:SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 即可。
Weblogic:
在startWebLogic.bat加上:set JAVA_OPTIONS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
转自:http://freedommedal.blog.51cto.com/2799387/519540
调试环境,并支持设置断点,支持线程线级的调试。
JAVA的调试方法如下:
1。首先支持JVM,并设置参数,使之工作在DEBUG模式下,加入参数:-Xdebug -Xrunjdwp,transport=dt_socket,server=y,address=5432,suspend=n,onthrow=java.io.IOException,launch=/sbin/echo
其中,-Xdebug是通知JVM工作在DEBUG模式下,-Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:
transport指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows平台。
server参数是指是否支持在server模式的VM中.
onthrow指明,当产生该类型的Exception时,JVM就会中断下来,进行调式。该参数可选。
launch指明,当JVM被中断下来时,执行的可执行程序。该参数可选
suspend指明,是否在调试客户端建立起来后,再执行JVM。
onuncaught(=y或n)指明出现uncaught exception 后,是否中断JVM的执行.
虚拟机参数设置
1.启用调试服务
-Xdebug 启用调试
-Xrunjdwp:<sub-options> 加载JVM的JPDA参考实现库
2.Xrunjdwp子参数(sub-options)配置
Xrunjdwp子参数的配置格式如下
-Xrunjdwp:<name1>[=<value1>],<name2>[=<value2>]...
几个例子
-Xrunjdwp:transport=dt_socket,server=y,address=8000
在8000端口监听Socket连接,挂起VM并且不加载运行主函数直到调试请求到达
-Xrunjdwp:transport=dt_shmem,server=y,suspend=n
选择一个可用的共享内存(因为没有指address)并监听该内存连接,同时加载运行主函数
-Xrunjdwp:transport=dt_socket,address=myhost:8000
连接到myhost:8000提供的调试服务(server=n,以调试客户端存在),挂起VM并且不加载运行主函数
-Xrunjdwp:transport=dt_shmem,address=mysharedmemory
通过共享内存的方式连接到调试服务,挂起VM并且不加载运行主函数
-Xrunjdwp:transport=dt_socket,server=y,address=8000,
onthrow=java.io.IOException,launch=/usr/local/bin/debugstub
等待java.io.IOException被抛出,然后挂起VM并监听8000端口连接,在接到调试请求后以命令/usr/local/bin/debugstub dt_socket myhost:8000执行
-Xrunjdwp:transport=dt_shmem,server=y,onuncaught=y,launch=d:\bin\debugstub.exe
等待一个RuntimeException被抛出,然后挂起VM并监听一个可用的共享内存,在接到调试请求后以命令d:\bin\debugstub.exe dt_shmem <address>执行,<address>是可用的共享内存
2。启动调试工具。
最简单的调试工具就是上面提到的JDB,以上述调试用JVM为例,可以用下面的命运行启动JDB:
jdb -connect com.sun.jdi.SocketAttach:port=5432,hostname=192.168.11.213
另外,还有好多的可视化调试工具,如 eclipse,jsawt等等。Eclipses可用 ant debug来建立一个调试方法。
其实就是使用了JDK的JPDA,在启动服务器(Jboss或者Tomcat等)的命令行参数里面加上:
-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
Java远程调试
-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,address=3999,suspend=n
-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 。
Resin:
RESIN_HOME\bin\httpd.exe -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n
Tomcat:
在catalina.sh/bat 的最上面加上:SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 即可。
Weblogic:
在startWebLogic.bat加上:set JAVA_OPTIONS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
转自:http://freedommedal.blog.51cto.com/2799387/519540
发表评论
-
java
2014-05-26 17:36 0http://hi.baidu.com/jiajiajava ... -
JAVA中的线程状态都有哪些?
2014-05-04 10:38 0经常会遇到这样的问题,JAVA中的线程都有哪些状态? 通过du ... -
java.lang.IllegalStateException: The request associated with the AsyncContext ha
2013-12-27 11:09 5491在使用Servlet3.0的异步特性时,免不了会遇到下面这个异 ... -
The display name was defined in multiple fragments with different values includi
2013-12-06 11:13 3216在使用Servlet3.0的新特性中关于WebFragment ... -
java.lang.IllegalStateException: Not supported.at org.apache.catalina.connector.
2013-12-04 14:30 3895在使用Servlet3.0的异步特性的时候,经常会遇到如下异步 ... -
java中出现的ConcurrentModificationException产生原因,解决方式及其它
2013-08-23 14:55 1281JAVA开发中有时会出现ConcurrentModificat ... -
windows中有用的查找端口占用的命令
2013-07-19 15:43 1068在windows中可以使用如下命令,查看端口昌被哪个程序占用。 ... -
ClientCommunicatorAdmin restart/Checker-run 等异常的处理
2013-07-15 19:32 3759在做JMX相关的开发过程中,下面这个异常一个会遇到: 20 ... -
Apache启动异常:apache service unable to open logs
2013-07-04 15:09 7385当启动Apache时,如果弹出窗口提示引用unable to ... -
VBox异常退出后,不能启动问题的解决办法
2013-06-26 15:01 6662今天把VBox中的进程强制停止后,启动VBox的时候,Ubun ... -
InetAddress.getLocalHost().getHostAddress()获取的IP不正确
2013-06-09 17:43 10424今天把在Windows下运行很正常的程序拿到Linux下测试, ... -
获取JVM的所有可选参数
2013-05-30 17:54 907使用如下命令可以列出所有java可选的参数 java -XX: ... -
在windows中获取某个进程的具体执行路径
2013-05-20 17:55 2220经常遇到要处理某类问题,知道某个具体进程,但是却不知道真正的执 ... -
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is
2013-05-08 17:49 2760今天在学RMI的时候遇到了这个问题: java.rmi.Un ... -
java中的toString()和(String)obj的区别
2013-04-22 18:07 1662java中的toString()和(String)obj的区别 ... -
Struts2 Dispatcher initialization failed No mapping found for dependency default
2013-04-10 16:41 1143在struts2的使用时如果发现以下异常信息, 严重: D ... -
java debug
2013-03-27 06:46 8571、 条件断点 断点大家都比较熟悉,在Eclipse Jav ... -
jdk Logger引起的NullPointerException
2013-03-25 18:22 960我们平时调用JDK的log来记录日志,都会习惯拿到一个logg ... -
对于应用服务器中的虚拟主机设置别名后,使用别名访问应用
2013-01-21 17:36 1447对于应用服务器中的虚拟主机设置别名后,使用http://别名 ... -
java.lang.IllegalStateException: Post too large的产生原因及解决方式
2013-01-10 18:35 3508最近客户那出了该异常: java.lang.Illegal ...
相关推荐
关于PHP调试XDebug工具的使用方法 大全
xdebug远程调试开启配置,按文档显示加入php.ini配置文件即可。需要自己下载xdebug for windows/linux, linux还需要自己编译出.so, 这里附带两个版本的so(xdebug2.2.5/2.2.6)
PHP-wampServer-phpStorm-xdebug环境配置图文介绍,...6.Phpstorm xdebug和火狐浏览器配置 15 参考文章 15 Wampserver开启xdebug 15 Phpstorm 配置xdebug 19 浏览器配置xdebug 21 启动效果 22 7.数据库root密码忘记 22
将xdebug库放入ext插件目录 备注:压缩包中的PHP8.1.1默认已经集成了php_xdebug-3.2.1-8.1-vs16-nts-x86_64.dll文件并已重命名为php_xdebug.dll。 2.配置用户环境变量 将PHP8.1所在目录添加进用户变量:D:\phpstudy_...
远程调试方法参数配置 在Java远程调试时添加以下运行参数,可进行调试(我使用的是Tomcat服务器) -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=6332,server=y,suspend=n 其中:...
Ansible-ansible-role-php-xdebug.zip,ansible角色-php xdebugansible角色:php xdebug,ansible是一个简单而强大的自动化引擎。它用于帮助配置管理、应用程序部署和任务自动化。
[Xdebug] zend_extension_ts="D:\php\ext\php_xdebug-2.0.3-5.2.5.dll" xdebug.auto_trace=Off xdebug.collect_params=On xdebug.collect_return=On xdebug.remote_enable=1 xdebug.remote_autostart=1 xdebug....
zend studio php 调试插件 xdebug-2.2.3-5.2-vc9
该文件是Chrome浏览器的扩展程序xdebug—help,主要是搭配PHP xdebug使用
php中调试代码时会用到的一个dll文件
Xdebug是一个PHP程序调试器,可以用来跟踪,调试和分析PHP程序的运行状况。其实调试PHP还有其他工具比如Zend Debugger,但zend官方不是免费发布的,后来更新为zend Server也是收费版。而Xdebug是完全免费的并且功能...
xdebug所有参数的详细说明
开发的时候我都是使用XDebug在本地调试,但是最近加入一些项目中去,环境太复杂了,要在本地搭建一个开发环境真的太麻烦了,那么我们怎么使用xdebug来远程调试呢?下面通过本篇文章给大家介绍php xdebug远程调试方法...
php-8.2.4-nts-Win32-vs16-x64.zip
docker-wordpress-xdebug WordPress Docker映像,用于调试WordPress,主题或插件,与MySQL,WordPress CLI和Xdebug捆绑在一起。 安装自动配置的,准备使用的WordPress。 可以将WordPress源代码安装到主机文件系统上...
老弟最新调试成功的,php7.4+phpstorm2022+xdebug远程调试教程。 网络太多这种教程了,基本都过时了,有的...按照下来,基本不通过,调试不了,经过老弟一条的摸索,各种百度,总结出了一份可行的xdebug远程调试方案。
netbeans配置及xdebug 调试 单元调试 单独流程调试
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装