使用 System.load(dll) 执行 JAVA 应用程序
Posted
技术标签:
【中文标题】使用 System.load(dll) 执行 JAVA 应用程序【英文标题】:execution of JAVA application with System.load(dll) 【发布时间】:2012-04-17 11:52:21 【问题描述】:是否可以通过在 java 应用程序内执行命令来在 linux(安装了 java 等)服务器上运行 java 应用程序?
System.load("path to .dll");
还有.. www.mono-project.com 可以帮我完成这个应用程序的任务吗?
【问题讨论】:
不这么认为。这个路径在linux下不可用 你希望这个命令如何执行? Linux 上甚至没有“C”驱动器。更不用说加载 DLL。 (它可能适用于 Wine 或类似的东西)。 抱歉,我使用的是复制/粘贴代码 【参考方案1】:DLL 是特定于 Windows 的本机库。您通常不能在 Linux 等非 Windows 操作系统上使用 Windows DLL。您需要拥有 DLL 的 Linux 版本;这通常具有扩展名.so
。
Mono 项目是在 Linux(和其他非 Microsoft 操作系统)上运行的 Microsoft .NET 框架的开源实现。它不能帮助您在非 Windows 操作系统上运行任意 DLL。
【讨论】:
这是我正在寻找的答案“不能帮助您在非 Windows 操作系统上运行任意 DLL。”谢谢!【参考方案2】:我不确定这是否适用于 Mono,但您可能想看看:
Launching an application (.EXE) from C#?
这是一个 Mono 示例:
mono Process.Start how to find bash?
我想知道您是否进行过搜索? :)
【讨论】:
非常感谢!这对我有帮助!以上是关于使用 System.load(dll) 执行 JAVA 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如何解决java调dll报Unable to load library的错误
如何解决java调dll报Unable to load library的错误
System.load()与System.loadLibrary()
java使用jna加载dll文件可以运行成功,打包后运行jar文件却找不到dll文件
System.load(String filename)和System.loadLibrary(String libname)的区别