com.ibm.mq.jar 的问题
Issue with com.ibm.mq.jar
我正在使用 IBM MQ 作为 put/get 消息的客户端。
当尝试创建 MQMessage reqMsg= new MQMessage()
时遇到异常
java.lang.NoClassDefFoundError: Could not initialize class com.ibm.mq.internal.MQCommonServices
但是 com.ibm.mq.jar 在我的 war.The 中可用,相同的代码在我的 windows 机器中工作但在 [=51= 中不工作](smoke) server.This 会经常发生,但是当我用新的 mq jar 替换现有的 mq jar 时,它曾经再次开始工作。但是这次没有运气。
下面的一些关键点可能有助于找出问题。
1) 我们手动将 jar 上传到版本 7.1.0.6 的工件中,因为服务器是 运行 相同的版本,因此客户端也需要有相同版本的 jar。
但是当我做 java -jar com.ibm.mq.jar 它显示如下
Name: WebSphere MQ classes for Java
Version: 8.0.0.5
Level: p800-005-160516.2
Build Type: Production
2) 我的 war 到 put/get 消息 from/to 服务器中有以下 7.1.0.6 版本的罐子。
com.ibm.mq.allclient
com.ibm.mq.axis2
com.ibm.mq.commonservices
com.ibm.mq.headers
com.ibm.mq
com.ibm.mq.jmqi
com.ibm.mq.jms.Nojndi
com.ibm.mq.pcf
com.ibm.mq.soap
com.ibm.mq.tools.ras
com.ibm.mq.traceControl
com.ibm.mqjms
3) 我正在使用 jdk 1.8.
非常感谢任何帮助。
com.ibm.mq.allclient.jar
在 IBM MQ v8 之前不存在,因此它不能来自 v7.1.0.6 安装。
检查每个 jar 中的 MANIFEST.MF 文件以检查它来自哪个版本的 IBM MQ。
在 linux 上,您可以使用以下命令,用每个 jar 替换 jar 名称。
unzip -p com.ibm.mq.jar META-INF/MANIFEST.MF|grep Implementation-Version
您收到的错误可能是因为 jar 版本之间不匹配。验证所有 jar 文件都来自相同版本的 IBM MQ。
我正在使用 IBM MQ 作为 put/get 消息的客户端。
当尝试创建 MQMessage reqMsg= new MQMessage()
时遇到异常
java.lang.NoClassDefFoundError: Could not initialize class com.ibm.mq.internal.MQCommonServices
但是 com.ibm.mq.jar 在我的 war.The 中可用,相同的代码在我的 windows 机器中工作但在 [=51= 中不工作](smoke) server.This 会经常发生,但是当我用新的 mq jar 替换现有的 mq jar 时,它曾经再次开始工作。但是这次没有运气。
下面的一些关键点可能有助于找出问题。
1) 我们手动将 jar 上传到版本 7.1.0.6 的工件中,因为服务器是 运行 相同的版本,因此客户端也需要有相同版本的 jar。
但是当我做 java -jar com.ibm.mq.jar 它显示如下
Name: WebSphere MQ classes for Java
Version: 8.0.0.5
Level: p800-005-160516.2
Build Type: Production
2) 我的 war 到 put/get 消息 from/to 服务器中有以下 7.1.0.6 版本的罐子。
com.ibm.mq.allclient
com.ibm.mq.axis2
com.ibm.mq.commonservices
com.ibm.mq.headers
com.ibm.mq
com.ibm.mq.jmqi
com.ibm.mq.jms.Nojndi
com.ibm.mq.pcf
com.ibm.mq.soap
com.ibm.mq.tools.ras
com.ibm.mq.traceControl
com.ibm.mqjms
3) 我正在使用 jdk 1.8.
非常感谢任何帮助。
com.ibm.mq.allclient.jar
在 IBM MQ v8 之前不存在,因此它不能来自 v7.1.0.6 安装。
检查每个 jar 中的 MANIFEST.MF 文件以检查它来自哪个版本的 IBM MQ。
在 linux 上,您可以使用以下命令,用每个 jar 替换 jar 名称。
unzip -p com.ibm.mq.jar META-INF/MANIFEST.MF|grep Implementation-Version
您收到的错误可能是因为 jar 版本之间不匹配。验证所有 jar 文件都来自相同版本的 IBM MQ。