B4J Question switched to java 14 and now: WARNING: package com.sun.javafx.embed.swing.oldimpl not in javafx.swing

MrKim

Well-Known Member
Licensed User
Longtime User
Downloaded the latest java (14) from here now all of my B4J apps (at least all the ones I've tried) give the above error but run in debug mode.

They FAIL in RELEASE mode qith the following:
B4X:
java.specification.version: 14
javafx.runtime.version: 14.0.1+1
sun.cpu.isalist: amd64
sun.jnu.encoding: Cp1252
java.class.path: D:\Android\B4J\Examples\BAB-Solitaire\Objects\Solitaire.jar
java.vm.vendor: Oracle Corporation
sun.arch.data.model: 64
user.variant:
java.vendor.url: https://java.oracle.com/
java.vm.specification.version: 14
os.name: Windows 10
javafx.version: 14.0.1
b4j.ide: true
sun.java.launcher: SUN_STANDARD
user.country: US
sun.boot.library.path: C:\Java\jdk-14.0.1\bin
sun.java.command: D:\Android\B4J\Examples\BAB-Solitaire\Objects\Solitaire.jar
jdk.debug: release
sun.cpu.endian: little
user.home: C:\Users\Kim
user.language: en
java.specification.vendor: Oracle Corporation
jdk.module.path: C:\Java\jdk-14.0.1\bin\..\javafx\lib
java.version.date: 2020-04-14
java.home: C:\Java\jdk-14.0.1
file.separator: \
java.vm.compressedOopsMode: Zero based
line.separator:
java.vm.specification.vendor: Oracle Corporation
java.specification.name: Java Platform API Specification
user.script:
sun.management.compiler: HotSpot 64-Bit Tiered Compilers
java.runtime.version: 14.0.1+7
user.name: Kim
path.separator: ;
os.version: 10.0
java.runtime.name: OpenJDK Runtime Environment
file.encoding: UTF-8
prism.lcdtext: false
java.vm.name: OpenJDK 64-Bit Server VM
java.vendor.url.bug: https://bugreport.java.com/bugreport/
java.io.tmpdir: C:\Users\Kim\AppData\Local\Temp\
java.version: 14.0.1
user.dir: D:\Android\B4J\Examples\BAB-Solitaire\Objects
os.arch: amd64
java.vm.specification.name: Java Virtual Machine Specification
sun.os.patch.level:
java.library.path: C:\Java\jdk-14.0.1\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\120\DTS\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft SQL Server Migration Assistant for Access\bin\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\Common Files\Acronis\VirtualFile\;C:\Program Files (x86)\Common Files\Acronis\VirtualFile64\;C:\Program Files (x86)\Common Files\Acronis\FileProtector\;C:\Program Files (x86)\Common Files\Acronis\FileProtector64\;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\130\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\;C:\Program Files\Microsoft SQL Server\140\Tools\Binn\;C:\Program Files\Microsoft SQL Server\140\DTS\Binn\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\Azure Data Studio\bin;C:\Program Files\Microsoft VS Code\bin;C:\Program Files\Git\cmd;C:\Program Files (x86)\QuickTime\QTSystem\;D:\Android\Java\jdk1.8.0_131\bin;C:\Users\Kim\AppData\Local\Microsoft\WindowsApps;;C:\Program Files\Azure Data Studio\bin;.
java.vm.info: mixed mode, sharing
java.vendor: Oracle Corporation
java.vm.version: 14.0.1+7
sun.io.unicode.encoding: UnicodeLittle
java.class.version: 58.0
main$ResumableSub_AppStart.resume (java line: 283)
java.lang.IllegalAccessException: class anywheresoftware.b4j.object.JavaObject cannot access class com.sun.glass.ui.Application (in module javafx.graphics) because module javafx.graphics does not export com.sun.glass.ui to unnamed module @46fd1f8
    at java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:376)
    at java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:647)
    at java.base/java.lang.reflect.Method.invoke(Method.java:556)
    at anywheresoftware.b4j.object.JavaObject.RunMethod(JavaObject.java:132)
    at anywheresoftware.b4j.object.JavaObject.RunMethodJO(JavaObject.java:139)
    at b4j.example.main$ResumableSub_AppStart.resume(main.java:283)
    at b4j.example.main._appstart(main.java:148)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:564)
    at anywheresoftware.b4a.BA.raiseEvent2(BA.java:111)
    at anywheresoftware.b4a.BA.raiseEvent(BA.java:98)
    at b4j.example.main.start(main.java:37)
    at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
    at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
    at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
    at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
    at java.base/java.lang.Thread.run(Thread.java:832)

Any help appreciated.
 
Solution
You probably need to add an -add-exports to #VirtualMachineArgs

B4X:
#VirtualMachineArgs: --add-exports javafx.graphics/com.sun.glass.ui=ALL-UNNAMED

(If I rememeber correctly)

You may need it on the packager too.

Daestrum

Expert
Licensed User
Longtime User
You probably need to add an -add-exports to #VirtualMachineArgs

B4X:
#VirtualMachineArgs: --add-exports javafx.graphics/com.sun.glass.ui=ALL-UNNAMED

(If I rememeber correctly)

You may need it on the packager too.
 
Upvote 0
Solution

mcqueccu

Well-Known Member
Licensed User
Longtime User
This line is just a warning
B4X:
WARNING: package com.sun.javafx.embed.swing.oldimpl not in javafx.swing

The main error is about "class com.sun.glass.ui.Application" Not found
B4X:
java.lang.IllegalAccessException: class anywheresoftware.b4j.object.JavaObject cannot access class com.sun.glass.ui.Application (in module javafx.graphics)

Try the two options
 
Upvote 0

MrKim

Well-Known Member
Licensed User
Longtime User
You probably need to add an -add-exports to #VirtualMachineArgs

B4X:
#VirtualMachineArgs: --add-exports javafx.graphics/com.sun.glass.ui=ALL-UNNAMED

(If I rememeber correctly)

You may need it on the packager too.
B4X:
 #VirtualMachineArgs: --add-opens javafx.graphics/com.sun.glass.ui=ALL-UNNAMED
solved the Release compile problem But I am still getting the warning in Debug mode.
 
Upvote 0
Top