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