Glad the problem is understood, and you were able to find a fix.
-- Kevin
On 12/17/2023 4:39 PM, Martin Fox wrote:
I was running the tests using the default JDK 19 supplied by Ubuntu. In that
environment AWT loads GTK 2 and then JavaFX throws an exception.
The hang occurs after the test times out. The cleanup code calls
Util.shutdown() which eventually calls into Platform.runLater(). The code in
PlatformImpl.java then waits forever on the startupLatch which will never reach
zero because of the exception thrown earlier.
I switched to Java SE 19 where AWT loads GTK 3, JavaFX has no complaints, and
the test proceeds.
Thanks,
Martin
On Dec 15, 2023, at 1:35 PM, Kevin Rushforth <kevin.rushfo...@oracle.com> wrote:
Hmm. That's odd. you could pass "-Djdk.gtk.verbose=true" and see what's
happening on the GTK loading side. Both AWT and JavaFX will print some info if that
system property it set.
To find out where the test process is hung you can use "jstack PID". If the test itself
is hung, then that test would be a good candidate for adding a timeout parameter to the
"@Test" tag.
-- Kevin
On 12/15/2023 11:36 AM, Martin Fox wrote:
I’m having an issue with one of the robot tests on my Linux machine. Before I
dig any further I could use some guidance on where to look.
I’m running Ubuntu 22.04 on ARM64 (in a Parallels VM). The command line I’m
using is:
bash ./gradlew -PFULL_TEST=true -PUSE_ROBOT=true :systemTests:test --tests
SwingNodeJDialogTest
The truly puzzling behavior is that the test never stops executing. I’ve got it
running right now and it says it’s been executing for over 40 minutes.
Shouldn’t the testing framework time this out?
Under the hood I believe that the Glass code in launcher.c is detecting that a
GTK 2 library is already loaded so it bails. From what I can tell both JavaFX
and Swing should default to GTK 3 so that’s also puzzling.
Any help would be appreciated.
Thanks,
Martin