gpt4 book ai didi

java.lang.UnsatisfiedLinkError 错误

转载 作者:太空狗 更新时间:2023-10-29 23:03:22 25 4
gpt4 key购买 nike

我正在尝试使用 JMS 访问 MQ 队列。我得到以下内容

java.lang.UnsatisfiedLinkError: no mqjbnd05 in java.library.path

我路过

-Djava.library.path="C:\Program Files\IBM\WebSphere MQ\java\lib"

在 eclipse 中运行程序时作为 VM 参数。这个问题网上讨论的很多,但都没有定论。有人解决了吗? TIA。

最佳答案

因为我不得不自己处理这个错误;我花了很多时间才找到正确的答案,我想与下一个分享这个主题的人分享...

其实解决问题的方法很简单(至少对我来说是这样)。它与任何 CLASSPATHjava.library.path 或安装问题无关。

我只是忘了将 MQConnectionFactory 切换到客户端模式。

这必须通过简单地调用来完成

cf.setTransportType(WMQConstants.WMQ_CM_CLIENT);

cf.setTransportType(WMQConstants.WMQ_CM_BINDINGS_THEN_CLIENT);

或满足您需要的任何其他连接类型。
默认情况下,ConnectionFactory 处于“绑定(bind)”模式 (WMQ_CM_BINDINGS),这是为本地服务器安装而设计的,如 IBM 文档中所述:

To connect to a queue manager in bindings mode, a WebSphere MQ classes for JMS application must run on the same system on which the queue manager is running.

当使用 JNDI 或 JmsFactoryFactory 时,此传输类型与 XMSC_WMQ_CONNECTION_MODE (WMQConstants.WMQ_CONNECTION_MODE) 属性相同。

同样适用于其他 ConnectionFactory 类型:MQQueueConnectionFactoryMQTopicConnectionFactoryMQXAConnectionFactoryMQXAQueueConnectionFactoryMQXATopicConnectionFactory

查看 IMB 知识中心以获取有关不同连接/绑定(bind)选项的更多信息:

https://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/q031720_.htm https://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/q030560_.htm

关于java.lang.UnsatisfiedLinkError 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3289319/

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