我知道可以在 java 中加载 DLL(Windows 库)。
而且我知道编译的java程序可以在任何地方运行..
加载 DLL 的 java 程序可以在 Unix 环境中运行吗?(如果那里存在 DLL 文件)
不可以。DLL 运行与 UNIX 操作系统不兼容的本机 Windows 指令。但是,可以使用JNI访问共享库 (.so) 。
为确保可移植的“一次编写,随处运行”模型,应避免调用本机库以支持纯 Java 实现。
我会非常惊讶。DLL(前提是它是本机的)将使用操作系统和特定平台构建。
不,你不能把 Windows PE/COFF DLL 放在 Unix 环境中,它就是行不通的。(除非你在谈论 Cygwin/MSYS)
您必须为目标系统编译库并使用它。
确实可以在 unix 中加载 DLL。然而,许多 dll 使用在 UNIX 上不可用的 windows API。您还必须检查您可能会遇到的版权问题。使用 JNI 可以访问本机库。但这(在 unix 中加载 DLL)不是受支持且可靠的配置。
给你一个简短的答案和一个简短的建议:答案是否定的,建议不要浪费你的时间这样做。