无法初始化com.ibm.mq.MQEnvironment

时间:2015-08-07 07:34:51

标签: java maven ibm-mq

我已从这些(版本:6.0.2.5)升级了IBM MQ的maven依赖项:

<dependency>
    <groupId>com.ibm</groupId>
    <artifactId>mq</artifactId>
    <version>${ibm-mq-version}</version>
</dependency>
<dependency>
    <groupId>com.ibm</groupId>
    <artifactId>mqjms</artifactId>
    <version>${ibm-mq-version}</version>
</dependency>
<dependency>
    <groupId>com.ibm.disthub2</groupId>
    <artifactId>dhbcore</artifactId>
    <version>DH610-Gold</version>
</dependency>
<dependency>
    <groupId>com.ibm</groupId>
    <artifactId>mqetclient</artifactId>
    <version>${ibm-mq-version}</version>
</dependency>

到那(版本:7.5.0.5):

<dependency>
    <groupId>com.ibm</groupId>
    <artifactId>mq-jms-all</artifactId>
    <version>${ibm-mq-version}</version>
</dependency>

现在,每当我尝试运行我的项目时,都会收到以下错误:

nested exception is java.lang.NoClassDefFoundError: Could not initialize class com.ibm.mq.MQEnvironment

正确导入maven-dependency,并且在maven-dependencies-tab中的Eclipse中也可以看到它。我也在类路径中看到了com.ibm.mq.jar。

我已经搜索了很多,唯一真正的解决方案,对某些人有用,是添加connector.jar。但我已经在使用jar了:

<dependency>
    <groupId>javax.resource</groupId>
    <artifactId>connector</artifactId>
    <version>${connector-version}</version>
</dependency>

我错过了什么吗?

3 个答案:

答案 0 :(得分:0)

  

IBM MQ(版本:6.0.2.5):

     

到那(版本:7.5.0.5):

IBM将MQException移动到&#39; com.ibm.mq.jmqi.jar&#39;文件。

根据MQ Knowledge Center,您需要以下用于MQ JMS编程的jar文件:

  • com.ibm.mq.commonservices.jar
  • com.ibm.mq.headers.jar
  • com.ibm.mq.pcf.jar
  • com.ibm.mq.jmqi.jar
  • connector.jar
  • jms.jar
  • dhbcore.jar
  • rmm.jar
  • jndi.jar
  • ldap.jar
  • fscontext.jar
  • providerutil.jar
  • CL3Export.jar
  • CL3Nonexport.jar

答案 1 :(得分:0)

完全相同的问题并解决了这个问题

<dependency>
    <groupId>javax.resource</groupId>
    <artifactId>connector</artifactId>
    <version>${connector-version}</version>
</dependency>

这些是我的依赖。

<dependency>
            <groupId>com.ibm.mq</groupId>
            <artifactId>com.ibm.mq.commonservices</artifactId>
            <version>7.0.1.4</version>
        </dependency>
        <dependency>
  <groupId>com.ibm.mq</groupId>
  <artifactId>com.ibm.mq.headers</artifactId>
  <version>7.0.1.4</version>
</dependency>
        <dependency>
  <groupId>com.ibm.mq</groupId>
  <artifactId>com.ibm.mq.jmqi</artifactId>
  <version>7.0.1.4</version>
</dependency>
        <dependency>
            <groupId>com.ibm.mq</groupId>
            <artifactId>com.ibm.mq.jms.Nojndi</artifactId>
            <version>7.0.1.4</version>
        </dependency>
        <dependency>
            <groupId>com.ibm.mq</groupId>
            <artifactId>com.ibm.mqjms</artifactId>
            <version>7.0.1.4</version>
        </dependency>
        <dependency>
            <groupId>com.ibm.mq</groupId>
            <artifactId>com.ibm.mq.soap</artifactId>
            <version>7.0.1.4</version>
        </dependency>
        <dependency>
  <groupId>com.ibm.mq</groupId>
  <artifactId>com.ibm.mq</artifactId>
  <version>7.0.1.4</version>
</dependency>       

        <dependency>
  <groupId>com.ibm.mq</groupId>
  <artifactId>com.ibm.mq.headers</artifactId>
  <version>7.0.1.4</version>
</dependency>
        <dependency>
  <groupId>com.ibm.mq</groupId>
  <artifactId>com.ibm.mq.pcf</artifactId>
  <version>7.0.1.4</version>
</dependency>
        <dependency>
  <groupId>javax.resource</groupId>
  <artifactId>connector</artifactId>
  <version>1.5</version>
</dependency>
        <dependency>
            <groupId>com.ibm</groupId>
            <artifactId>com.ibm.dhbcore</artifactId>
            <version>7.0.1</version>
        </dependency>
        <dependency>
            <groupId>com.ibm.mq</groupId>
            <artifactId>CL3Nonexport</artifactId>
            <version>${webspheremq.version}</version>
        </dependency>
        <dependency>
            <groupId>com.ibm</groupId>
            <artifactId>com.ibm.mqetclient</artifactId>
            <version>7.0.1</version>
        </dependency>

答案 2 :(得分:0)

对于Eclipse(动态Web项目(Servlet)),您需要复制文件:

com.ibm.mq.commomservices.jar
com.ibm.mq.defaultconfig.jar
com.ibm.mq.headers.jar
com.ibm.mq.jar
com.ibm.mq.jmqi.jar
com.ibm.mq.jms.Nojndi.jar
com.ibm.mq.pcf.jar
com.ibm.mqetclient.jar
com.ibm.mqjms.jar
connector.jar
dhbcode.jar
fscontext.jar
jms.jar

到/ WebContext / WEB-INF / lib,然后将它们添加到Project(项目 - &gt;属性 - &gt; Java构建路径 - &gt;添加外部JAR)。  毕竟,请完成以下步骤:

  • 关闭项目
  • 关闭Eclipse
  • 打开Eclipse
  • 打开项目。

祝你好运!