This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Created attachment 163503 [details] Screenshots of each move I made setting up JFX8 project in NB9+JDK9 Bootstrap JavaFX 8 (Hello World) Project Build Failed in NB9 using JDK 9 Installed JDK8u121 then NB9 (Friday's build) then JDK 9, configured NB9 to use JDK 9, Created bootstrap JavaFX Application, Build/Run via JDK 9, consistently get error that leads me to believe run is using JRE8 instead of JRE 9, as it is using a library that is one version too old (52 instea of 53). Screenshots show error messages, but here it is again here: -------------------------- ant -f C:\\Users\\Walls\\Documents\\NetBeansProjects\\Java9BoardGame jfxsa-run init: deps-jar: Created dir: C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\build Updating property file: C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\build\built-jar.properties Created dir: C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\build\classes Created dir: C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\build\empty Created dir: C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\build\generated-sources\ap-source-output Compiling 1 source file to C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\build\classes compile: Created dir: C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\dist C:\Users\Walls\Documents\NetBeansProjects\Java9BoardGame\nbproject\jfx-impl.xml:428: java.lang.UnsupportedClassVersionError: com/sun/javafx/tools/ant/Application has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:763) at org.apache.tools.ant.AntClassLoader.defineClassFromData(AntClassLoader.java:1143) at org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1311) at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1367) at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1328) at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1083) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.apache.tools.ant.taskdefs.Definer.addDefinition(Definer.java:579) at org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:237) at org.apache.tools.ant.taskdefs.Antlib.execute(Antlib.java:180) at org.apache.tools.ant.taskdefs.Definer.loadAntlib(Definer.java:428) at org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:277) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293) at sun.reflect.GeneratedMethodAccessor104.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:435) at org.apache.tools.ant.Target.performTasks(Target.java:456) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405) at org.apache.tools.ant.Project.executeTarget(Project.java:1376) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1260) at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:286) at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:555) at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153) BUILD FAILED (total time: 4 seconds) ----------------------------------[module-info.java]------------------ module Java9BoardGame { requires javafx.media; requires javafx.controls; exports java9boardgame to javafx.graphics; }
Developing JavaFX app for JDK9 in NetBeans 9 shows currently 2 problems: 1. Running NB9 on top of JDK8 as runtime platform and setting just JavaFX project Java Platform to JDK9 and Source level to JDK9 causes problem described above by WallaceJackson. E.g. for Build action JDK8 is used to perform Ant action with classes from JDK9 JavaFX ant tasks: Loaded from /home/xxxx/jdk-9-b151/lib/ant-javafx.jar com/sun/javafx/tools/ant/Application.class Exiting /home/xxxx/NetBeansProjects/JavaFXApplication6/build.xml. /home/xxxx/NetBeansProjects/JavaFXApplication6/nbproject/jfx-impl.xml:3479: The following error occurred while executing this line: /home/xxxx/NetBeansProjects/JavaFXApplication6/nbproject/jfx-impl.xml:428: java.lang.UnsupportedClassVersionError: com/sun/javafx/tools/ant/Application has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) ... 2. When NetBeanas 9 is started on top of JDK9 using either --jdkhome switch or JAVA_HOME variable (JavaFX project is using JDK9 as Java Platform and Source level) then different error happens in project Build action, see: https://netbeans.org/bugzilla/show_bug.cgi?id=269752
I've found that it is also necessary to set system PATH to JDK9/bin so JavaFX ant tasks are run with JDK9. If PATH points to JDK8 then ClassVersionErr happens as well.