java - 64 位 java 应用程序使用 32 位 dll

标签 java dll 64-bit

在 JBoss 下运行的 Java 应用程序(使用 64 位 JRockit)需要与第三方 32 位 C++ dll 通信(调用外部服务)。有没有比在两者之间放置 .NET Web 服务更聪明的方法来解决这个问题?

最佳答案

您必须运行 32 位进程才能加载 dll。这可能是另一个充当 RMI 服务器并使用 JNI 或 Web 服务加载 dll 的 JVM。

RMI 服务器的性能可能会更高,但考虑到所有可用的工具,Web 服务可能会更简单。

如果您确实使用 JNI 路由访问 RMI 服务器,请查看 Swig - 对于我们这些忘记了 C++ 的人来说,它使 JNI 部分变得更加简单。

关于java - 64 位 java 应用程序使用 32 位 dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1058560/

相关文章:

java - 为什么 Bloch 声明不可能对集合实现进行子类化?

来自父类(super class)的 Java 子类构造函数

java - 从 JNA jar 文件中提取 DLL 到自定义路径

c++ - 从 Delphi 调用 c++ 类库

linux - 在 64 位 Linux 操作系统上运行的 32 位进程的内存限制

c - 通过 POSIX 套接字发送 64 位变量的可移植方式

java - JTextField 不编辑 JTextInput

java - Spring Data JPA 有没有办法使用方法名称解析来计算实体?

c++ - 如果我在调用 DLL 中的函数时没有传递足够的参数,会发生什么?

php - 如何在 PHP 中有一个 64 位整数?