B4J Question B4J V4.7 problem

gezueb

Active Member
Licensed User
Longtime User
Hi, I just updated B4J to version 4.7 because I want to use File.DirData. However, when I compiles my program that was running flawlessly before I get 14 errors on startup (not on compile) like this one

java.lang.NoClassDefFoundError: javafx/scene/control/Dialog
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at anywheresoftware.b4a.shell.Shell.getCorrectClassName(Shell.java:504)
at anywheresoftware.b4a.shell.Shell.createObject(Shell.java:491)
at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:244)
at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:159)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:93)
at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:90)
at b4j.example.main.<clinit>(main.java:17)
Caused by: java.lang.ClassNotFoundException: javafx.scene.control.Dialog
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 13 more
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: java.lang.NoClassDefFoundError: javafx/scene/control/Dialog
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:114)
at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:90)
at b4j.example.main.<clinit>(main.java:17)
Caused by: java.lang.NoClassDefFoundError: javafx/scene/control/Dialog
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at anywheresoftware.b4a.shell.Shell.getCorrectClassName(Shell.java:504)
at anywheresoftware.b4a.shell.Shell.createObject(Shell.java:491)
at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:244)
at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:159)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:93)
... 2 more
Caused by: java.lang.ClassNotFoundException: javafx.scene.control.Dialog
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 13 more


I would be grateful for help, Georg
Exception in thread "main"
 

gezueb

Active Member
Licensed User
Longtime User
Erel, I have updated both the Java jdk and the run time machine to version 8.111. No luck, same behaviour. The error occurs on process global initialization before any of my code is executed.
 
Upvote 0

gezueb

Active Member
Licensed User
Longtime User
Thank you, Enrique and Erel, you hit the nail on the head. I was not aware that the jdk does not update but creates a new version. It works fine now after I redirected the path. I would suggest that the download instructions of b4j would be a bit more explicit about these requirements, maybe others are as ignorant as I am about java and its components:). If I would have a facebook account I would send you many likes! Georg
 
Upvote 0
Top