Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
531 views
in Technique[技术] by (71.8m points)

java - OpenJFX support for 32-bit systems

I would like to build my JavaFX app for Windows x86 arch. So I've downloaded Adopt OpenJdk 32-bit build and used it to create Java Runtime Image. When I'm trying to run application I get the following error:

Loading library api-ms-win-core-console-l1-1-0 from resource failed: java.lang.UnsatisfiedLinkError: C:Usersadmin01.openjfxcache11.0.1api-ms-win-core-console-l1-1-0.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
java.lang.UnsatisfiedLinkError: C:Usersadmin01.openjfxcache11.0.1api-ms-win-core-console-l1-1-0.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
        at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)

This error occurs because openjfx:javafx-graphics artifact is platform dependent and it includes DLLs compiled for 64-bit arch.

$ file api-ms-win-core-console-l1-1-0.dll
api-ms-win-core-console-l1-1-0.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows

There is no 32-bit OpenJFX version in Maven Central.

Is it possible to get x86 version somewhere? Or how can I build it by myself?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Liberica OpenJDK 12 is available for 32-bit Windows and includes OpenJFX. As far as I know it's the only publicly available JDK including 32bit openjfx ref. https://bell-sw.com/pages/java-12

As of right now (April 16th 2019):

  • Zulu OpenJDK not available publicly for 32bit windows plus never got any reply on requests for 32bit
  • Amazon Corretto available for Java 8 only plus not full Javafx (missing webkit libs)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...