Date Created: Tue 08-Mar-2011

Related Document Categories:



    AMQ8568 The native JNI library mqjbnd 64bit error

    When trying to run an MQ client developed in Eclipse, I get the following error. See below for solution.

    MQJE001: Completion Code '2', Reason '2495'.
    com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2495'.
    at com.ibm.mq.MQSESSION.<init>(MQSESSION.java:2075)
    at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:2112)
    at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:202)
    at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnection(MQBindingsManagedConnectionFactoryJ11.java:248)
    at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnection(MQBindingsManagedConnectionFactoryJ11.java:302)
    at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.java:95)
    at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConnectionManager.java:182)
    at com.ibm.mq.MQQueueManagerFactory.obtainBaseMQQueueManager(MQQueueManagerFactory.java:869)
    at com.ibm.mq.MQQueueManagerFactory.procure(MQQueueManagerFactory.java:761)
    at com.ibm.mq.MQQueueManagerFactory.constructQueueManager(MQQueueManagerFactory.java:712)
    at com.ibm.mq.MQQueueManagerFactory.createQueueManager(MQQueueManagerFactory.java:171)
    at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:603)
    at com.fr.utils.PingQueueManager.PingStatus(PingQueueManager.java:27)
    at com.fr.MQProcessor.connectionValid(MQProcessor.java:397)
    at com.fr.MQProcessor.mainProcessor(MQProcessor.java:194)
    at com.fr.MQProcessor.start(MQProcessor.java:110)
    at com.fr.MQProcessor.main(MQProcessor.java:168)
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2495;AMQ8568: The native JNI library 'mqjbnd' was not found. [3=mqjbnd]
    at com.ibm.mq.jmqi.local.LocalMQ$1.run(LocalMQ.java:294)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.ibm.mq.jmqi.local.LocalMQ.initialise_inner(LocalMQ.java:259)
    at com.ibm.mq.jmqi.local.LocalMQ.initialise(LocalMQ.java:225)
    at com.ibm.mq.jmqi.local.LocalMQ.<init>(LocalMQ.java:1039)
    at com.ibm.mq.jmqi.local.LocalServer.<init>(LocalServer.java:173)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at com.ibm.mq.jmqi.JmqiEnvironment.getInstance(JmqiEnvironment.java:687)
    at com.ibm.mq.jmqi.JmqiEnvironment.getMQI(JmqiEnvironment.java:623)
    at com.ibm.mq.MQSESSION.<init>(MQSESSION.java:2067)
    ... 16 more
    Caused by: java.lang.UnsatisfiedLinkError: D:\WMQ7\java\lib64\mqjbnd.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
    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 com.ibm.mq.jmqi.local.LocalMQ.loadLib(LocalMQ.java:1008)
    at com.ibm.mq.jmqi.local.LocalMQ$1.run(LocalMQ.java:273)
    ... 28 more
    DEBUG [main] (PingQueueManager.java:21) - PingStatus...
    DEBUG [main] (PingQueueManager.java:23) - queueManagerName=[QM_TEST]
    MQJE001: Completion Code '2', Reason '2495'.
    com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2495'.
    at com.ibm.mq.MQSESSION.<init>(MQSESSION.java:2075)
    at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:2112)
    at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:202)
    at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnection(MQBindingsManagedConnectionFactoryJ11.java:248)
    at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnection(MQBindingsManagedConnectionFactoryJ11.java:302)
    at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.java:95)
    at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConnectionManager.java:182)
    at com.ibm.mq.MQQueueManagerFactory.obtainBaseMQQueueManager(MQQueueManagerFactory.java:869)
    at com.ibm.mq.MQQueueManagerFactory.procure(MQQueueManagerFactory.java:761)
    at com.ibm.mq.MQQueueManagerFactory.constructQueueManager(MQQueueManagerFactory.java:712)
    at com.ibm.mq.MQQueueManagerFactory.createQueueManager(MQQueueManagerFactory.java:171)
    at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:603)
    at com.fr.utils.PingQueueManager.PingStatus(PingQueueManager.java:27)
    at com.fr.MQProcessor.connectionValid(MQProcessor.java:406)
    at com.fr.MQProcessor.mainProcessor(MQProcessor.java:194)
    at com.fr.MQProcessor.start(MQProcessor.java:110)
    at com.fr.MQProcessor.main(MQProcessor.java:168)
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2495;AMQ8568: The native JNI library 'mqjbnd' was not found. [3=mqjbnd]
    at com.ibm.mq.jmqi.local.LocalMQ$1.run(LocalMQ.java:294)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.ibm.mq.jmqi.local.LocalMQ.initialise_inner(LocalMQ.java:259)
    at com.ibm.mq.jmqi.local.LocalMQ.initialise(LocalMQ.java:225)
    at com.ibm.mq.jmqi.local.LocalMQ.<init>(LocalMQ.java:1039)
    at com.ibm.mq.jmqi.local.LocalServer.<init>(LocalServer.java:173)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at com.ibm.mq.jmqi.JmqiEnvironment.getInstance(JmqiEnvironment.java:687)
    at com.ibm.mq.jmqi.JmqiEnvironment.getMQI(JmqiEnvironment.java:623)
    at com.ibm.mq.MQSESSION.<init>(MQSESSION.java:2067)
    ... 16 more
    Caused by: java.lang.UnsatisfiedLinkError: D:\WMQ7\java\lib64\mqjbnd.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
    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 com.ibm.mq.jmqi.local.LocalMQ.loadLib(LocalMQ.java:1008)
    at com.ibm.mq.jmqi.local.LocalMQ$1.run(LocalMQ.java:273)


    The reason for this error is that though the MQ java libs (jars) are in the classpath, I am running a 32bit version of Eclipse and JRE. I have installed WMQ 7 64bit on my latptop and hence I have a conflict. The resolution is to run a 64bit version of Eclipse


Middleware Mentor - Steven Charles Robinson

About Me

Steve Robinson has been working in IT for over 15 years and has provided solutions for many large-enterprise corporate companies across the world. Steve specialises in Java and Middleware consulting. Steve comes from both an administration and development background.

Before moving to JEE, Steve was an accomplished developer and consultant for both IBM Lotus Notes and Microsoft .NET Technologies.

Follow Steve as @stevencrobinson on twitter.

Read my books?

IBM WebSphere Application Server 8.0 Administration Guide

IBM WebSphere Application Server 8.0 Administration Guide

WebSphere Application Server 7.0 Administration Guide

WebSphere Application Server 7.0 Administration Guide

WebSphere Categories

Oracle WebLogic Categories

JBoss Categories

Other Categories