That sounds correct indeed. I filed https://bugs.openjdk.java.net/browse/JDK-8280369 for this. Thanks for reporting!
- Johan On Thu, Jan 20, 2022 at 6:14 AM Glavo <zjx001...@gmail.com> wrote: > I noticed that openjfx packaged in jar caches native libraries in > ~/.openjfx/cache/${version}, it is not related to the system and > architecture. > > It should be noted that in fact, we can start programs with different > architectures on the same system. A typical example is that Windows x86 > software can be run on the Windows amd64 platform. > With the popularization of aarch64 architecture, this situation will become > more common: The software of Windows x86 and Windows amd64 can be run on > the Windows aarch64 platform, and the software of MacOs x86 can be run on > the MacOS aarch64. > > The native library file names of different schemas on the same system are > usually the same, which will cause conflicts. > For example, I tried to launch the same JavaFX application on my Windows > amd64 machine with two jdks that for x86 architecture and amd64 > architecture at the same time, and it crashed: > > https://paste.ubuntu.com/p/NZBK3pNrh7/ > > On ARM machines, it is often necessary to run x86 applications through > translators, and such crashes may be more common. > > I think openjfx should adjust the cache path of the native library, such as > ~/.openjfx/cache/17.0.2/win-aarch64/. > This can avoid crashes and avoid openjfx repeatedly decompressing the > native library to cover the native libraries of other architectures. > > I don't have a JBS account. If you need to open an issue for this problem, > please do it for me, thanks. >