从java类初始化IBM MQ时获取错误消息

时间:2014-08-18 05:25:20

标签: ibm-mq

线程中的异常" main" java.lang.UnsatisfiedLinkError:java.library.path中没有mqjbnd05

创建MQQueueManager时

我不知道为什么会这样。你可以帮助我。

2 个答案:

答案 0 :(得分:2)

错误表示MQ客户端已尝试加载mqjbnd库,但无法在提供的java.library路径中找到它。 MQ客户端尝试加载该库,因为应用程序已指定了传输类型的绑定'这意味着MQ客户端应用程序将与MQ服务器存在于同一物理机器上,因此将进行绑定连接(而不是TCP / IP)。

因此,解决您需要了解的问题,以确定您的Java应用程序是否应存在于与要连接的MQ服务器(QueueManager)相同的物理机器上。如果它应该是mqjbnd库(.dll或.so)应该位于java / lib目录中。将其添加到java.library(Windows上的PATH或unix上的LD_LIBRARY_PATH)。

如果您的应用程序要远离MQ服务器,则必须更改Java代码以使用传输类型的客户端'。远程连接时无需引用任何库。

答案 1 :(得分:1)

值得注意的是,mqjbnd05是由MQ v6 Java客户端加载的库。 MQ v6现在已不再支持。

mqjbnd是从v7开始的库的名称。