Hi Paul,
I have been using jikes to compile the version of jdebug included in the
JDE beta distribution. A few days ago I started running jdebug with JDK
1.3beta and got a mysterious null pointer exception when stepping through
code. Recompiling with the JDK 1.3 javac compiler eliminated the exception.
As a result, I have decided henceforth to use javac to compile all Java
code in the JDE distribution. I plan to make a new release tonight with the
recompiled jdebug code plus some other improvements. You might want to wait
for this release to eliminate compiler problems as a variable in the
debugger problem.
- Paul
At 09:24 AM 12/13/99 -0500, Paul Michael Reilly wrote:
>I tested JPDA with JDE (http://sunsite.auc.dk/jde, jde-2.1.6beta13) on
>the Sun/Inprise release and on the (unreleased) Blackdown
>jdk-1.2.2-RC4. Neither variant worked.
>
>On Sun/Inprise, the vm initialization failed and there was no output.
>
>On Blackdown/RC4, initialization succeeded but the application vm
>crashed before hitting the break at Main. The JDE interaction buffer,
>Debugger output and thread dump follow:
>
>The test program is HelloWorld:
>
>public class Test extends Object
>{
> public static void main( String[] args )
> {
> System.out.println( "Hello World" );
> }
>}
>
>I plan on chasing down the RC4 problem, but I don't expect it will be
>easy. Anyone who wants to jump on this bandwagon ... welcome. :-)
>
>-pmr
>
>
>*JDebug*
>
>java -classpath
>/projects/jde/java/lib/jde.jar:/data/pmr/java/jdk/lib/jpda.jar
>jde.debugger.Main
>
>
>(jde-dbo-init-debug-session)
>
>JDE> -1 2 launch 2 -use_executable java -classpath /home/pmr/test -Xms16m
>-Xmx96m Test
>
>
>
>(jde-dbo-message
>2 "Launched VM Java Debug Interface (Reference Implementation) version 1.3
>Java Debug Wire Protocol (Reference Implementation) version 1.0
>JVM Debug Interface version 1.0
>JVM version 1.2.2 (Classic VM, build Linux_JDK_1.2.2_RC4, green threads,
>nojit)")
>
>
>(jde-dbo-command-result 2 3902)
>
>JDE> 2 3 run
>
>
>
>(jde-dbo-command-result 3)
>
>
>(jde-dbo-event-set
>2 "all"
>(list "Thread" 1 "main" "waiting on monitor" "suspended by debugger")
>(list 'jde-dbo-vm-start-event))
>
>
>(jde-dbo-message 2 "Application I/O closed")
>
>
>(jde-dbo-error 2 "Input error; application I/O closed")
>
>
>(jde-dbo-message 2 "Application I/O closed")
>
>Reaped pid = 14171, status = 1
>
>(jde-dbo-event-set 2 "none" nil
>(list 'jde-dbo-vm-disconnected-event))
>
>
>*** Debugger Output for Process Test(2) ***
>
>Launched VM Java Debug Interface (Reference Implementation) version 1.3
>Java Debug Wire Protocol (Reference Implementation) version 1.0
>JVM Debug Interface version 1.0
>JVM version 1.2.2 (Classic VM, build Linux_JDK_1.2.2_RC4, green threads,
nojit)
>Launching vm to run Test
>Running Test.
>vm started...
>All threads suspended...
>Application I/O closed
>Input error; application I/O closed
>Application I/O closed
>vm disconnected...
>
>
>*** Thread Dump ***
>
>OUCH: nested memory code, to 1 levels.
>SIGABRT 6* abort (generated by abort(3) routine, also SIGIOT)
> stackpointer=0xbfffe2f4
>OUCH: nested memory code, to 1 levels.
>
>Full thread dump Classic VM (Linux_JDK_1.2.2_RC4, green threads):
> "JDWP Command Reader" (TID:0x4122c710, sys_thread_t:0x81979b0, state:CW)
>prio=5
> "JDWP Event Helper Thread" (TID:0x4122c570, sys_thread_t:0x8196088,
>state:CW) prio=5
> "JDWP Transport Listener: dt_socket" (TID:0x4122c590,
>sys_thread_t:0x81930e8, state:CW) prio=5
> "Finalizer" (TID:0x41227320, sys_thread_t:0x8122840, state:CW) prio=8
> at java.lang.Object.wait(Native Method)
> at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:112)
> at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
> at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:174)
> "Reference Handler" (TID:0x412273b0, sys_thread_t:0x811dce8, state:CW)
>prio=10
> at java.lang.Object.wait(Native Method)
> at java.lang.Object.wait(Object.java:424)
> at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:114)
> "Signal dispatcher" (TID:0x412273e0, sys_thread_t:0x811a488, state:CW)
>prio=5
> "main" (TID:0x412271e0, sys_thread_t:0x804c6c0, state:R) prio=5
> at java.lang.ClassLoader.findBootstrapClass(Native Method)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:285)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:283)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:275)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>Monitor Cache Dump:
> java.lang.ref.Reference$Lock@412273C0/4155CB20: <unowned>
> Waiting to be notified:
> "Reference Handler" (0x811dce8)
> java.lang.Class@4122C548/415823A8: owner "main" (0x804c6c0) 1 entry
> java.lang.ref.ReferenceQueue$Lock@41227338/4155D028: <unowned>
> Waiting to be notified:
> "Finalizer" (0x8122840)
> sun.misc.Launcher$ExtClassLoader@4122BE70/4157FA68: owner "main"
>(0x804c6c0) 1 entry
> sun.misc.Launcher$AppClassLoader@4122C240/415815F8: owner "main"
>(0x804c6c0) 3 entries
>Registered Monitor Dump:
> JDWP Command Queue Lock: <unowned>
> Waiting to be notified:
> "JDWP Transport Listener: dt_socket" (0x81930e8)
> JDWP Event Helper Completion Monitor: <unowned>
> JDWP Event Helper Queue Monitor: <unowned>
> Waiting to be notified:
> "JDWP Event Helper Thread" (0x8196088)
> JDWP Event Handler Lock: <unowned>
> JDWP Transport Send Monitor: <unowned>
> JDWP Transport Listener Monitor: <unowned>
> JDWP Initialization Monitor: <unowned>
> JDWP Invocation Lock: <unowned>
> JDWP Step Handler Lock: <unowned>
> JDWP Thread Lock: <unowned>
> JDWP Reference Table Monitor: <unowned>
> JDWP Alloc Lock: <unowned>
> utf8 hash table: <unowned>
> JNI pinning lock: <unowned>
> JNI global reference lock: <unowned>
> BinClass lock: <unowned>
> Class linking lock: <unowned>
> System class loader lock: <unowned>
> Code rewrite lock: <unowned>
> Heap lock: <unowned>
> Monitor cache lock: owner "main" (0x804c6c0) 1 entry
> Dynamic loading lock: <unowned>
> Monitor IO lock: <unowned>
> User signal monitor: <unowned>
> Waiting to be notified:
> "Signal dispatcher" (0x811a488)
> Child death monitor: <unowned>
> I/O monitor: <unowned>
> Alarm monitor: <unowned>
> Waiting to be notified:
> <unknown thread> (0x8056b20)
> Thread queue lock: owner "main" (0x804c6c0) 1 entry
> Monitor registry: owner "main" (0x804c6c0) 1 entry
>
>OUCH: nested memory code, to 1 levels.
>OUCH: nested memory code, to 1 levels.
>
>Process Test(2) CLI exited abnormally with code 256