B4J Question JavaFX SDK not working properly on JVM (vmWare/VirtualBox)

ThRuST

Well-Known Member
Licensed User
Longtime User
I have waited a long time to post this due to alot of tests regarding this, but here it comes.

Is JavaFX SDK working as expected on the virtual Macs and/or real hardware you have tried?

From my own experience SDK's does not work well on macOSX High Sierra and Mojave.
The Java settings pane on Mojave is empty on JVM. Not sure about real hardware though.
However on EL Capitan (vmWare) everything seems to work fine except some pasting enigma with the 'v' char.

Used for testing: Windows 7, Windows 10, vmWare v10, 12 and 15. SDK 8 and also 9.0.4.
CPUs: AMD Phenom II 3.4 GHz, Intel Core i7 3.6 GHz (4.7 GHz OC).
macOSX El Capitan, Sierra, High Sierra, Mojave.

Own Test Results: VmWare v15 worked best with Win 10, SDK 9.0.4, i7 9700 on macOSX El Capitan (vmWare image)

Please share your experiences with the community.
Include what specs you tested SDK with or everyone will end up confused.
 
Last edited:

ThRuST

Well-Known Member
Licensed User
Longtime User
@Erel Have you ever been using Vmware or VirtualBox? My experience is that it can be time consuming to get MacOS to run.
I even read that JVM is not fully compatible with hardware because Apple don't want to lose sales!! As they only support Intel CPUs.
 
Upvote 0

ThRuST

Well-Known Member
Licensed User
Longtime User
Here's is a reference to various versions currently available

Mac OS X versions and code names
  • OS X 10 beta: Kodiak - 13 September 2000
  • OS X 10.0: Cheetah - 24 March 2001
  • OS X 10.1: Puma - 25 September 2001
  • OS X 10.2: Jaguar - 24 August 2002
  • OS X 10.3 Panther (Pinot) - 24 October 2003
  • OS X 10.4 Tiger (Merlot) - 29 April 2005
  • OS X 10.4.4 Tiger (Chardonnay)]
  • OS X 10.5 Leopard (Chablis) - 26 October 2007
  • OS X 10.6 Snow Leopard - 28 August 2009
  • OS X 10.7 Lion (Barolo) - 20 July 2011
  • OS X 10.8 Mountain Lion (Zinfandel) - 25 July 2012
  • OS X 10.9 Mavericks (Cabernet) - 22 October 2013
  • OS X 10.10: Yosemite (Syrah) - 16 October 2014
  • OS X 10.11: El Capitan (Gala) - 30 September 2015
  • macOS 10.12: Sierra (Fuji) - 20 September 2016
  • macOS 10.13: High Sierra (Lobo) - 25 September 2017
  • macOS 10.14: Mojave (Liberty) - 24 September 2018
 
Upvote 0

techknight

Well-Known Member
Licensed User
Longtime User
Granted the above is split between two major architectures, PPC and Intel. I dont even think Java 8 would even run on a PPC Mac, which would be Leopard and before.
 
Upvote 0

techknight

Well-Known Member
Licensed User
Longtime User
b4J apps on a mac? Yes and they work fine.

But I have only tried on newer macs, Not older ones (from the PPC Era)
 
Upvote 0

techknight

Well-Known Member
Licensed User
Longtime User
I dont have VmWare, I dont have any virtual machines besides my Win7 one. My laptop is also just out of support for Mojave (mid 2011) so no go there. its running High Seirra.
 
Upvote 0

ThRuST

Well-Known Member
Licensed User
Longtime User
I must have tested all versions of vmWare and VirtualBox lol

macOS is a bitch on JVM!!! so don't go there mate haha
 
Upvote 0

techknight

Well-Known Member
Licensed User
Longtime User
Well I have not had an issue yet when it comes to using a real mac and high sierra. But, JavaFX relies on the GPU and its accelerations, and that has changed significantly in Mac OS, they switched to the Metal API which they flipped the switch in Mojave, so older machines with older GPUs (like mine) are now shut out.

Also VMs dont emulate or even provide support for GPU acceleration, so its of no surprise.
 
Upvote 0

techknight

Well-Known Member
Licensed User
Longtime User
Also TBH, I havent used MacOS in a virtual machine since Snow Leopard. haha. However I may have to get back into VMs so I can run the latest OS to keep up with xcode and build servers for IOS. as I am sure eventually they will kill off High Sierra, which means my mac is pretty much obsolete.
 
Upvote 0

ThRuST

Well-Known Member
Licensed User
Longtime User
There's hardware accelleration in vmWare that works pretty well in MacOSX, thanks to vmWare Tools updates, which is ahead of VirtualBox.

In gereral vmWare is easier to set up and works better. El Capitan seems to be the peak for JavaFX support, then as you mention it gets worse.

There's hacks around that unlocks so it's possible to install macOSX on VmWare. Some even have modifications that makes it work on AMD CPUs!!

Google YouTube and thou shall find a working drive image :)
 
Upvote 0

ThRuST

Well-Known Member
Licensed User
Longtime User
About to make my project work with Java 11

This came up when I run Athena

upload_2019-1-29_17-46-35.png
 
Upvote 0

chams

Member
Licensed User
Longtime User
Don't work with VirtualBox 6.0.4 / High Sierra (10.13.6) - Java JDK 8 212 on Xeon 3.3 Ghz / 32 Go RAM
At compilation :
2019-04-21 14:15:49.130 java[829:15555] CGLChoosePixelFormat error: 10002
and the app window loading by the b4j-bridge don't shows the buttons and labels.


Left the sample on Win10, right the sample on High Sierra VM

2019-04-21_233530.jpg
 
Upvote 0

ThRuST

Well-Known Member
Licensed User
Longtime User
@chams Thanks for sharing your experience. That supports also my own test on High sierra and Mojave but I used vmWare. I believe Xeon was made by Intel which should be supported by Apple. You might confirm if El capitan works with VirtualBox 6.0.4 but that's optional of course. It's a rather time consuming task to set it up but it's fun once it works (like with code) :)
 
Upvote 0

chams

Member
Licensed User
Longtime User
TADA : Works with VirtualBox 6.0.4 / El Capitan (10.11) - Java JDK 8 212 on Xeon 3.3 Ghz / 32 Go RAM

The button and text appear ;)

2019-04-22_115232.jpg
 
Upvote 0
Top