gpt4 book ai didi

Windows x64 中使用 JRE x86 的 Java 串行 I/O

转载 作者:可可西里 更新时间:2023-11-01 09:35:31 24 4
gpt4 key购买 nike

我有一个 Java 应用程序在 Windows 7 64 位上运行,但在 32 位版本的 JRE 上运行。我需要此应用程序与串行 com 端口通信,显然我需要一点帮助。 :)

在您建议 RXTX 之前,我已经尝试过 32 位和 64 位版本的 RXTX DLL。要么因为 32 位 JRE 无法加载 64 位 DLL 而失败,要么因为 32 位 DLL 给出 java.lang.UnsatisfiedLinkError 而失败:

java.lang.UnsatisfiedLinkError: <Path>\cache\bundle1030\version0.0\bundle.jar-lib\0\lib\win32\rxtxSerial.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83)

我认为这是因为 32 位 RXTX DLL 在 Windows 中找不到用于串行通信的 32 位 DLL。

关于如何进行的任何线索?另一个图书馆?如何弥合 32 位 JRE 和 64 位 Windows DLL 之间的差距?

最佳答案

有一个很棒的免费工具叫做 Dependency Walker .它准确地告诉您给定 DLL 将根据当前 PATH 加载哪些其他 DLL,以及哪些无法找到或无法正确加载。它救了我很多次,它应该是调试你这里问题的完美工具。一旦您知道缺少什么,您就可以找到要安装的 32 位版本——或者可能只是更改您的路径以使其可用。

关于Windows x64 中使用 JRE x86 的 Java 串行 I/O,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6676431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com