johanvos/quantumjava

paulixui OS/X - *** Terminating app due to uncaught exception 'NSInternalInconsistencyException'

mik3hall opened this issue · 3 comments

Actually seems to be a Homebrew issue but if anyone else runs into it.

For this example (paulixui)
mvn javafx:run

gets the indicated error.
This indicates it should of been fixed at 19.0.2
https://stackoverflow.com/questions/74630535/assertion-failure-when-trying-to-compile-javafx-project-using-maven

I am using a homebrew maven
mvn --version
Apache Maven 3.9.4 (dfbb324ad4a7c8fb0bf182e6d91b0ae20e3d2dd9)
Maven home: /usr/local/Cellar/maven/3.9.4/libexec
Java version: 20.0.1, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk/20.0.1/libexec/openjdk.jdk/Contents/Home
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "13.4.1", arch: "x86_64", family: "mac"

Which apparently uses it's own homebrew (Cellar) jdk.

Setting to use the Oracle 19.0.2
/usr/libexec/java_home -v 19
/Library/Java/JavaVirtualMachines/jdk-19.0.2.jdk/Contents/Home

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-19.0.2.jdk/Contents/Home

and it ran correctly. So the homebrew jdk seems to have missed the fix.

Hi @mik3hall . Thanks for this issue! I believe the issue you mention is the one described here: https://bugs.openjdk.org/browse/JDK-8296654 .
This is fixed by JavaFX 19.0.2.1
For what sample is this crashing for you? I see in https://github.com/johanvos/quantumjava/blob/master/ch03/paulixui/pom.xml#L21 that I refer to JavaFX 18 in that one, and that should not have that issue?

It is fixed in Oracle 19.0.2.1 which is what I switched to.
However, I got lazy and used OS/X Homebrew to install maven and that appears to bundle its own version of the jdk. A 20 if I remember right. Apparently they missed the fix or regressed it out.
For the Homebrew maven I think I need to change jdk via the JAVA_HOME environment variable about every time.

I verified it isn't regressed out of the Oracle 20