Hi, I need help building javafx applications. I don't know how to build a simple app:
This is my environment: ``` Ekaitz@tuxedo ~/projects/window$$ guix shell openjdk openjdk:jdk java-openjfx-graphics java-openjfx-controls java-openjfx-media java-openjfx-base java-openjfx-build ``` I look for the javafx module paths: ``` Ekaitz@tuxedo ~/projects/window$ [env]$ guix build java-openjfx-graphics java-openjfx-controls java-openjfx-media java-openjfx-base java-openjfx-build /gnu/store/rynjd6sbgqhz7zpgzrdzl8fcpbykwxri-java-openjfx-build-8.202 /gnu/store/13l0qiwy3z88hiq49g9zdpcj77i16fx9-java-openjfx-base-8.202 /gnu/store/bwpkcbcm8cwkdcq7sviyya6pjb4ma3zk-java-openjfx-media-8.202 /gnu/store/f4bbx3524avpw1yn9b0z0fax9rmx4ayd-java-openjfx-controls-8.202 /gnu/store/hpcja76y3y0hpgkxvmv68jhxjlny2316-java-openjfx-graphics-8.202 ``` If I don't add them to module paths they don't appear: ``` Ekaitz@tuxedo ~/projects/window$ [env]$ java --list-modules java.base@19.0.1 java.compiler@19.0.1 java.datatransfer@19.0.1 java.desktop@19.0.1 java.instrument@19.0.1 java.logging@19.0.1 java.management@19.0.1 java.management.rmi@19.0.1 java.naming@19.0.1 java.net.http@19.0.1 java.prefs@19.0.1 java.rmi@19.0.1 java.scripting@19.0.1 java.se@19.0.1 java.security.jgss@19.0.1 java.security.sasl@19.0.1 java.smartcardio@19.0.1 java.sql@19.0.1 java.sql.rowset@19.0.1 java.transaction.xa@19.0.1 java.xml@19.0.1 java.xml.crypto@19.0.1 jdk.accessibility@19.0.1 jdk.attach@19.0.1 jdk.charsets@19.0.1 jdk.compiler@19.0.1 jdk.crypto.cryptoki@19.0.1 jdk.crypto.ec@19.0.1 jdk.dynalink@19.0.1 jdk.editpad@19.0.1 jdk.hotspot.agent@19.0.1 jdk.httpserver@19.0.1 jdk.incubator.concurrent@19.0.1 jdk.incubator.vector@19.0.1 jdk.internal.ed@19.0.1 jdk.internal.jvmstat@19.0.1 jdk.internal.le@19.0.1 jdk.internal.opt@19.0.1 jdk.internal.vm.ci@19.0.1 jdk.internal.vm.compiler@19.0.1 jdk.internal.vm.compiler.management@19.0.1 jdk.jartool@19.0.1 jdk.javadoc@19.0.1 jdk.jcmd@19.0.1 jdk.jconsole@19.0.1 jdk.jdeps@19.0.1 jdk.jdi@19.0.1 jdk.jdwp.agent@19.0.1 jdk.jfr@19.0.1 jdk.jlink@19.0.1 jdk.jpackage@19.0.1 jdk.jshell@19.0.1 jdk.jsobject@19.0.1 jdk.jstatd@19.0.1 jdk.localedata@19.0.1 jdk.management@19.0.1 jdk.management.agent@19.0.1 jdk.management.jfr@19.0.1 jdk.naming.dns@19.0.1 jdk.naming.rmi@19.0.1 jdk.net@19.0.1 jdk.nio.mapmode@19.0.1 jdk.random@19.0.1 jdk.sctp@19.0.1 jdk.security.auth@19.0.1 jdk.security.jgss@19.0.1 jdk.unsupported@19.0.1 jdk.unsupported.desktop@19.0.1 jdk.xml.dom@19.0.1 jdk.zipfs@19.0.1 ``` But If I add them they appear: ``` Ekaitz@tuxedo ~/projects/window$ [env]$ java --list-modules --module-path /gnu/store/rynjd6sbgqhz7zpgzrdzl8fcpbykwxri-java-openjfx-build-8.202/share/java:/gnu/store/13l0qiwy3z88hiq49g9zdpcj77i16fx9-java-openjfx-base-8.202/share/java:/gnu/store/bwpkcbcm8cwkdcq7sviyya6pjb4ma3zk-java-openjfx-media-8.202/share/java:/gnu/store/f4bbx3524avpw1yn9b0z0fax9rmx4ayd-java-openjfx-controls-8.202/share/java:/gnu/store/hpcja76y3y0hpgkxvmv68jhxjlny2316-java-openjfx-graphics-8.202/share/java java.base@19.0.1 java.compiler@19.0.1 java.datatransfer@19.0.1 java.desktop@19.0.1 java.instrument@19.0.1 java.logging@19.0.1 java.management@19.0.1 java.management.rmi@19.0.1 java.naming@19.0.1 java.net.http@19.0.1 java.prefs@19.0.1 java.rmi@19.0.1 java.scripting@19.0.1 java.se@19.0.1 java.security.jgss@19.0.1 java.security.sasl@19.0.1 java.smartcardio@19.0.1 java.sql@19.0.1 java.sql.rowset@19.0.1 java.transaction.xa@19.0.1 java.xml@19.0.1 java.xml.crypto@19.0.1 jdk.accessibility@19.0.1 jdk.attach@19.0.1 jdk.charsets@19.0.1 jdk.compiler@19.0.1 jdk.crypto.cryptoki@19.0.1 jdk.crypto.ec@19.0.1 jdk.dynalink@19.0.1 jdk.editpad@19.0.1 jdk.hotspot.agent@19.0.1 jdk.httpserver@19.0.1 jdk.incubator.concurrent@19.0.1 jdk.incubator.vector@19.0.1 jdk.internal.ed@19.0.1 jdk.internal.jvmstat@19.0.1 jdk.internal.le@19.0.1 jdk.internal.opt@19.0.1 jdk.internal.vm.ci@19.0.1 jdk.internal.vm.compiler@19.0.1 jdk.internal.vm.compiler.management@19.0.1 jdk.jartool@19.0.1 jdk.javadoc@19.0.1 jdk.jcmd@19.0.1 jdk.jconsole@19.0.1 jdk.jdeps@19.0.1 jdk.jdi@19.0.1 jdk.jdwp.agent@19.0.1 jdk.jfr@19.0.1 jdk.jlink@19.0.1 jdk.jpackage@19.0.1 jdk.jshell@19.0.1 jdk.jsobject@19.0.1 jdk.jstatd@19.0.1 jdk.localedata@19.0.1 jdk.management@19.0.1 jdk.management.agent@19.0.1 jdk.management.jfr@19.0.1 jdk.naming.dns@19.0.1 jdk.naming.rmi@19.0.1 jdk.net@19.0.1 jdk.nio.mapmode@19.0.1 jdk.random@19.0.1 jdk.sctp@19.0.1 jdk.security.auth@19.0.1 jdk.security.jgss@19.0.1 jdk.unsupported@19.0.1 jdk.unsupported.desktop@19.0.1 jdk.xml.dom@19.0.1 jdk.zipfs@19.0.1 java.openjfx file:///gnu/store/rynjd6sbgqhz7zpgzrdzl8fcpbykwxri-java-openjfx-build-8.202/share/java/java-openjfx.jar automatic java.openjfx.base file:///gnu/store/13l0qiwy3z88hiq49g9zdpcj77i16fx9-java-openjfx-base-8.202/share/java/java-openjfx-base.jar automatic java.openjfx.controls file:///gnu/store/f4bbx3524avpw1yn9b0z0fax9rmx4ayd-java-openjfx-controls-8.202/share/java/java-openjfx-controls.jar automatic java.openjfx.graphics file:///gnu/store/hpcja76y3y0hpgkxvmv68jhxjlny2316-java-openjfx-graphics-8.202/share/java/java-openjfx-graphics.jar automatic java.openjfx.media file:///gnu/store/bwpkcbcm8cwkdcq7sviyya6pjb4ma3zk-java-openjfx-media-8.202/share/java/java-openjfx-media.jar automatic ``` But I can't compile a file with them: ``` Ekaitz@tuxedo ~/projects/window$ [env]$ javac --module-path /gnu/store/rynjd6sbgqhz7zpgzrdzl8fcpbykwxri-java-openjfx-build-8.202/share/java:/gnu/store/13l0qiwy3z88hiq49g9zdpcj77i16fx9-java-openjfx-base-8.202/share/java:/gnu/store/bwpkcbcm8cwkdcq7sviyya6pjb4ma3zk-java-openjfx-media-8.202/share/java:/gnu/store/f4bbx3524avpw1yn9b0z0fax9rmx4ayd-java-openjfx-controls-8.202/share/java:/gnu/store/hpcja76y3y0hpgkxvmv68jhxjlny2316-java-openjfx-graphics-8.202/share/java --add-modules java.openjfx.controls,java.openjfx.media,java.openjfx.graphics,java.openjfx.base HelloFX.java error: module java.openjfx.controls reads package netscape.javascript from both java.openjfx.graphics and jdk.jsobject error: module java.openjfx reads package netscape.javascript from both java.openjfx.graphics and jdk.jsobject error: module java.openjfx.media reads package netscape.javascript from both java.openjfx.graphics and jdk.jsobject error: module java.openjfx.graphics reads package netscape.javascript from both java.openjfx.graphics and jdk.jsobject error: module java.openjfx.base reads package netscape.javascript from both java.openjfx.graphics and jdk.jsobject error: the unnamed module reads package netscape.javascript from both jdk.jsobject and java.openjfx.graphics 6 errors ``` This is the file I'm trying to compile: ``` java import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.layout.StackPane; import javafx.stage.Stage; public class HelloFX extends Application { @Override public void start(Stage stage) { String javaVersion = System.getProperty("java.version"); String javafxVersion = System.getProperty("javafx.version"); Label l = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + "."); Scene scene = new Scene(new StackPane(l), 640, 480); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(); } } ``` Can anyone help me solve this issue? Is it possible to simple add them via the CLASSPATH and avoid the module system? Thank you!