Tag: jdb

Java jdb远程调试命令行工具

有没有人有这方面的经验? 如果是的话,值得吗?

Eclipse如何在应用程序服务器中调试代码?

当我在Eclipse中以调试模式运行服务器时,Eclipse与我的应用程序服务器(JBoss)之间正在进行什么通信? 这是如何运作的?

如何将控制台输入传递给正在运行的Java程序而不是jdb?

使用Java的jdb调试我的代码。 我停留在我的程序期望命令行输入的位置,但是jdb将其作为jdb命令拦截。 如何告诉jdb将文本传递给正在运行的程序? 版: C:\Documents and Settings\*snip*>java -showversion java version “1.6.0_17” Java(TM) SE Runtime Environment (build 1.6.0_17-b04) Java HotSpot(TM) Client VM (build 14.3-b01, mixed mode, sharing) 编译: javac -g LZWDecompress.java jdb.ini: stop in LZWDecompress.decompress run monitor list 这是发生的事情: Initializing jdb … *** Reading commands from C:\Documents and Settings\*snip*\jdb.ini Deferring breakpoint LZWDecompress.decompress. It will be set […]

在未捕获的exception上附加jdb

所以,我正在开始一个Java程序,如下所示 java -agentlib:jdwp=transport=dt_socket,address=8000, server=y,suspend=n MyClass 然后我手动附加调试器,如下所示 jdb -attach 8000 我想知道是否有任何方式让我设置jdb,以便在未捕获的exception情况下它自动附加到正在运行的进程(仅)? 原因是我希望避免调试器的开销直到出现未捕获的exception。 但我现在面临的问题是,如果没有附加调试器,那么一旦出现未捕获的exception,JVM就会中止。 编辑: 从Oracle 文档来看,似乎下面的命令可以满足我的需求,但对于Windows机器而言。 java -agentlib:jdwp=transport=dt_shmem,server=y,onuncaught=y,launch=d:\bin\debugstub.exe MyClass 谁知道linux等价? 我试过下面的命令。 java -agentlib:jdwp=transport=dt_socket,address=8000,server=y,onuncaught=y,suspend=n,launch=jdb MyClass 调试器似乎连接但它立即引发IOError。 Initializing jdb … java.io.IOException: Input/output error at java.io.FileInputStream.readBytes(Native Method) at java.io.FileInputStream.read(FileInputStream.java:272) at java.io.BufferedInputStream.read1(BufferedInputStream.java:273) at java.io.BufferedInputStream.read(BufferedInputStream.java:334) at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283) at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177) at java.io.InputStreamReader.read(InputStreamReader.java:184) at java.io.BufferedReader.fill(BufferedReader.java:154) at java.io.BufferedReader.readLine(BufferedReader.java:317) at java.io.BufferedReader.readLine(BufferedReader.java:382) at com.sun.tools.example.debug.tty.TTY.(TTY.java:751) […]