The JDB debug agent in 1.1.4 does not work on Solaris native threads,
because it cannot access the thread state information. Apparently
there is a fix for this in 1.2 but it needs to go into 1.1 as well.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Test case:
test.java file:
=========================================================================
public class test {
static void main(String args[]) {
System.out.println("test");
}
}
=========================================================================
compile with javac, run jdb
The statement "Initializing jdb..." is spit out and the prompt is never
returned.
If I type ^Z to suspend it and bring it back into foreground, it gets to
the jdb prompt immediately. If I then type "stop in test::main" and then
the command "run". The 1.1.3 version gives me an error about the thread
not being suspended. The 1.1.4 Pre-Release version runs the entire program
before ever stopping and then gives me the error "Current thread isn't
suspended." for commands like list. If I use the 1.1.4 version from
java.sun.com with the green threads it works fine.
Here is the other things you might want to know:
hoth> echo $JAVA_COMPILER
JAVA_COMPILER: Undefined variable.
hoth> echo $THREADS_FLAG
THREADS_FLAG: Undefined variable.
hoth> which javac
/usr/bin/javac
hoth> which java
/usr/bin/java
hoth> which jdb
/usr/bin/jdb
hoth> echo $CLASSPATH
.:/home/fred/prsystem/java:/usr/local/sybjdbc/classes
hoth> uname -a
SunOS hoth 5.6 Generic sun4u sparc SUNW,Ultra-30
hoth> java -fullversion
"Solaris_JDK_1.1.4_01_pre-release1"
karyn.ritter@Eng 1997-12-02
because it cannot access the thread state information. Apparently
there is a fix for this in 1.2 but it needs to go into 1.1 as well.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Test case:
test.java file:
=========================================================================
public class test {
static void main(String args[]) {
System.out.println("test");
}
}
=========================================================================
compile with javac, run jdb
The statement "Initializing jdb..." is spit out and the prompt is never
returned.
If I type ^Z to suspend it and bring it back into foreground, it gets to
the jdb prompt immediately. If I then type "stop in test::main" and then
the command "run". The 1.1.3 version gives me an error about the thread
not being suspended. The 1.1.4 Pre-Release version runs the entire program
before ever stopping and then gives me the error "Current thread isn't
suspended." for commands like list. If I use the 1.1.4 version from
java.sun.com with the green threads it works fine.
Here is the other things you might want to know:
hoth> echo $JAVA_COMPILER
JAVA_COMPILER: Undefined variable.
hoth> echo $THREADS_FLAG
THREADS_FLAG: Undefined variable.
hoth> which javac
/usr/bin/javac
hoth> which java
/usr/bin/java
hoth> which jdb
/usr/bin/jdb
hoth> echo $CLASSPATH
.:/home/fred/prsystem/java:/usr/local/sybjdbc/classes
hoth> uname -a
SunOS hoth 5.6 Generic sun4u sparc SUNW,Ultra-30
hoth> java -fullversion
"Solaris_JDK_1.1.4_01_pre-release1"
karyn.ritter@Eng 1997-12-02