We currently store the native libraries that are contained in the javafx jar files in a cache on the runtime machine. The cache already depends on the version (e.g. you can have javafx 17.0.1 and javafx 17.0.0 libs next to each other), but not on the architecture.
As noted on the openjfx-dev mailinglist:
https://mail.openjdk.java.net/pipermail/openjfx-dev/2022-January/033274.html
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.
We should add this to the NativeLibLoader which deals with read/write to the library cache.
As noted on the openjfx-dev mailinglist:
https://mail.openjdk.java.net/pipermail/openjfx-dev/2022-January/033274.html
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.
We should add this to the NativeLibLoader which deals with read/write to the library cache.