【问题标题】:Unresolved constraint in bundle com.ibm.msg.client.osgi.commonservices.j2se missing requirement捆绑包 com.ibm.msg.client.osgi.commonservices.j2se 中未解决的约束缺少需求
【发布时间】:2018-10-08 12:49:32
【问题描述】:

我正在从 Fuse 6.2.1 迁移到 6.3-310,我收到 osgi 接线包错误。看起来它与 IBM WMQ 库有关,这些包中的一个可能会导出此 javax.jms 要求。我已经搜索但找不到,希望这已经被发现了。先感谢您。

#JBOSS ENV INFO    
        JBossFuse:karaf@root> info
        Karaf
          Karaf version               2.4.0.redhat-630310
          Karaf home                  /app/instances/jboss-fuse-6.3.0.redhat-310
          Karaf base                  /app/instances/jboss-fuse-6.3.0.redhat-310
          OSGi Framework              org.apache.felix.framework - 4.4.1

        JVM
          Java Virtual Machine        Java HotSpot(TM) 64-Bit Server VM version 25.162-b12
          Version                     1.8.0_162
          Vendor                      Oracle Corporation
          Pid                         23619
          Uptime                      1 hour 44 minutes
          Total compile time          1 minute
        Threads
          Live threads                85
          Daemon threads              67
          Peak                        94
          Total started               214
        Memory
          Current heap size           93,729 kbytes
          Maximum heap size           932,352 kbytes
          Committed heap size         686,080 kbytes
          Pending objects             0
          Garbage collector           Name = 'PS Scavenge', Collections = 48, Time = 1.019 seconds
          Garbage collector           Name = 'PS MarkSweep', Collections = 4, Time = 1.140 seconds
        Classes
          Current classes loaded      10,801
          Total classes loaded        10,867
          Total classes unloaded      66
        Operating system
          Name                        Linux version 2.6.32-696.6.3.el6.x86_64
          Architecture                amd64
          Processors                  6
    #FUSE JMS BUNDLES
        JBossFuse:karaf@root> list -t 0 -s | grep jms
        [ 241] [Active     ] [Created     ] [       ] [   80] org.apache.karaf.jms.core (2.4.0.redhat-630310)
        [ 242] [Active     ] [            ] [       ] [   30] org.apache.servicemix.bundles.spring-jms (3.2.18.RELEASE_1)
        [ 243] [Active     ] [            ] [       ] [   50] org.apache.camel.camel-jms (2.17.0.redhat-630310)
        [ 244] [Active     ] [Created     ] [       ] [   80] org.apache.karaf.jms.command (2.4.0.redhat-630310)
#EXPORTS
        JBossFuse:karaf@root> exports | grep jms
            78 org.apache.cxf.binding.soap.jms.interceptor; version=3.1.5
           218 org.apache.activemq.jms.pool; version=5.11.0.redhat-630310
           218 org.apache.activemq.network.jms; version=5.11.0.redhat-630310
           241 org.apache.karaf.jms; version=2.4.0
           242 org.springframework.jms.core.support; version=3.2.18.RELEASE
           242 org.springframework.jms.connection; version=3.2.18.RELEASE
           242 org.springframework.jms.listener.adapter; version=3.2.18.RELEASE
           242 org.springframework.jms.support; version=3.2.18.RELEASE
           242 org.springframework.jms; version=3.2.18.RELEASE
           242 org.springframework.jms.core; version=3.2.18.RELEASE
           242 org.springframework.jms.config; version=3.2.18.RELEASE
           242 org.springframework.jms.support.converter; version=3.2.18.RELEASE
           242 org.springframework.jms.listener; version=3.2.18.RELEASE
           242 org.springframework.jms.listener.endpoint; version=3.2.18.RELEASE
           242 org.springframework.jms.support.destination; version=3.2.18.RELEASE
           242 org.springframework.jms.remoting; version=3.2.18.RELEASE
           243 org.apache.camel.component.jms; version=2.17.0.redhat-630310
           243 org.apache.camel.component.jms.reply; version=2.17.0.redhat-630310
           244 org.apache.karaf.jms.command; version=2.4.0.redhat-630310
           244 org.apache.karaf.jms.command.completers; version=2.4.0.redhat-630310
#IMPORTS
        JBossFuse:karaf@root> imports | grep jms
        JMS API (198): javax.jms; version=2.0.0
        JMS API (198): javax.jms; version=2.0.0
        JMS API (198): javax.jms; version=2.0.0
        JMS API (198): javax.jms; version=2.0.0
        JMS API (198): javax.jms; version=2.0.0
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.connection; version=3.2.18.RELEASE
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.support; version=3.2.18.RELEASE
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms; version=3.2.18.RELEASE
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.core; version=3.2.18.RELEASE
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.support.converter; version=3.2.18.RELEASE
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.listener; version=3.2.18.RELEASE
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.support.destination; version=3.2.18.RELEASE
        JMS API (198): javax.jms; version=2.0.0
        Apache Karaf :: JMS :: Core (241): org.apache.karaf.jms; version=2.4.0
        JMS API (198): javax.jms; version=2.0.0
        Apache ServiceMix :: Bundles :: spring-jms (242): org.springframework.jms.connection; version=3.2.18.RELEASE
        camel-jms (243): org.apache.camel.component.jms; version=2.17.0.redhat-630310
        JMS API (198): javax.jms; version=2.0.0
        camel-jms (243): org.apache.camel.component.jms; version=2.17.0.redhat-630310
#FEATURES FILE
        <?xml version="1.0" encoding="UTF-8"?>
        <features xmlns="http://karaf.apache.org/xmlns/features/v1.0.0">
            <feature name="fadec-application" version="1.0.0" description="Delta FADEC Route and dependencies">
                <feature>camel-core</feature>
                <feature>camel-blueprint</feature>
                <feature>camel-csv</feature>
                <feature>camel-sql</feature>
                <feature>camel-velocity</feature>
                <feature>camel-xmlbeans</feature>

                <bundle start-level="60">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5</bundle>
                <bundle start-level="61">wrap:mvn:org.apache.poi/poi-ooxml-schemas/3.9$DynamicImport-package=*</bundle>
                <bundle start-level="65">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.poi/3.9_2</bundle>

                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/commonservices-j2se/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/nls/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/jms-prereq/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/jms/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/wmq-nls/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/wmq-prereq/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.msg.client.osgi/wmq/7.5.0.2</bundle>
                <bundle start-level="60">mvn:com.ibm.mq.osgi/directip/7.5.0.2</bundle>
                <bundle start-level="80">wrap:mvn:mysql/mysql-connector-java/5.1.45</bundle>
                <bundle start-level="84">wrap:mvn:com.mchange/mchange-commons-java/0.2.11</bundle>
                <bundle start-level="85">wrap:mvn:com.mchange/c3p0/0.9.5.2$Bundle-SymbolicName=c3p0-0.9.5.2&amp;Import-package=*;resolution:=optional;version=0</bundle>
                <bundle start-level="85">wrap:mvn:org.springframework/spring-jdbc/5.0.3.RELEASE$Import-package=com.mysql.jdbc;resolution:=optional;version=0,javax.sql;resolution:=optional;version=0,org.apache.commons.logging;resolution:=optional;version=0,org.springframework.util;resolution:=0;version=0</bundle>
                <bundle start-level="90">mvn:com.ge.ip.infra/delta-fadec-prod/3.0.1-SNAPSHOT</bundle>
            </feature>
        </features>

    # POM.XML
               <properties>

                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

                <compiler.source.version>1.8</compiler.source.version>
                <compiler.target.version>1.8</compiler.target.version>

                <!-- JBoss Fuse Properties -->
                <jboss.fuse.bom.version>6.3.0.redhat-310</jboss.fuse.bom.version>
                <jboss.fuse.install>6.3.0.redhat-310</jboss.fuse.install>

                <!-- Versions pulled from JBoss Fuse BOM for Dependency Management. -->
                <cxf-version>2.17.0.redhat-630310</cxf-version>
                <camel-version>2.17.0.redhat-630310</camel-version>
                <activemq-version>5.11.0.redhat-630310</activemq-version>
                <karaf-version>2.4.0.redhat-630310</karaf-version>
                <hawtio-version>1.4.0.redhat-630310</hawtio-version>
                <fabric-version>1.2.0.redhat-630310</fabric-version>
                <junit-version>4.11</junit-version>
                <log4j-version>1.2.17</log4j-version>
                <velocity-bundle-version>2.17.0.redhat-630310</velocity-bundle-version> 
                <velocity-version>2.17.0.redhat-630310</velocity-version>
                <joda-time-version>2.9.2</joda-time-version>

                <!-- Versions of 3rd Party Dependencies -->
                <!-- <ibm-mq-version>7.0.1.6</ibm-mq-version> -->
                <ibm-mq-version>7.5.0.2</ibm-mq-version>

                <!-- Test Dependencies -->
                <ftpserver-version>1.0.6</ftpserver-version>
                <sshd-version>0.10.0</sshd-version>
                <greenmail-version>1.4.0</greenmail-version>

                <!-- Plugin Versions-->
                <version.maven-compiler-plugin>2.5.1</version.maven-compiler-plugin>
                <bundle-plugin-version>2.3.7</bundle-plugin-version>
                <build-helper-plugin-version>1.8</build-helper-plugin-version>
                <resources-plugin-version>2.4.3</resources-plugin-version>
                <felix-bundle-plugin-version>2.3.7</felix-bundle-plugin-version>
                <lifecycle-mapping-version>1.0.0</lifecycle-mapping-version>
                <maven-failsafe-plugin-version>2.8.1</maven-failsafe-plugin-version>
                <depends-maven-plugin-version>1.2</depends-maven-plugin-version>

              </properties>

              <dependencyManagement>
              <dependencies>
                  <!-- Import Fuse Dependency Management via BOM -->
                  <dependency>
                    <groupId>org.jboss.fuse.bom</groupId>
                    <artifactId>jboss-fuse-parent</artifactId>
                    <version>${jboss.fuse.bom.version}</version>
                    <type>pom</type>
                    <scope>import</scope>
                  </dependency>

                  <!-- IBM MQ Dependencies -->
                  <dependency>
                    <groupId>com.ibm.mq</groupId>
                    <artifactId>com.ibm.mq.dhbcore</artifactId>
                    <version>${ibm-mq-version}</version>
                  </dependency>
                  <dependency>
                    <groupId>com.ibm.mq</groupId>
                    <artifactId>com.ibm.mq.jmqi</artifactId>
                    <version>${ibm-mq-version}</version>
                  </dependency>
                  <dependency>
                    <groupId>com.ibm</groupId>
                    <artifactId>com.ibm.mq</artifactId>
                    <version>${ibm-mq-version}</version>
                  </dependency>
                  <dependency>
                    <groupId>com.ibm</groupId>
                    <artifactId>com.ibm.mqjms</artifactId>
                    <version>${ibm-mq-version}</version>
                  </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-jdbc</artifactId>
                    <version>5.0.3.RELEASE</version>
                </dependency> 
            <dependency>
              <groupId>com.mchange</groupId>
              <artifactId>c3p0</artifactId>
              <version>0.9.5.2</version>
            </dependency>


                  <dependency>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                    <version>5.1.45</version>
                  </dependency>

                  <dependency>
                    <groupId>joda-time</groupId>
                    <artifactId>joda-time</artifactId>
                    <version>${joda-time-version}</version>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.servicemix.bundles</groupId>
                    <artifactId>org.apache.servicemix.bundles.dom4j</artifactId>
                    <version>1.6.1_5</version>
                  </dependency>
                  <dependency>
                      <groupId>org.apache.servicemix.bundles</groupId>
                      <artifactId>org.apache.servicemix.bundles.poi</artifactId>
                      <version>3.9_2</version>
                  </dependency>
                  <dependency>
                      <groupId>org.apache.poi</groupId>
                      <artifactId>poi-ooxml-schemas</artifactId>
                      <version>3.9</version>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.poi</groupId>
                    <artifactId>poi-ooxml</artifactId>
                    <version>3.9</version>
                  </dependency>
                </dependencies>
              </dependencyManagement>

              <dependencies>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-core</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-blueprint</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-mail</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-ftp</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.activemq</groupId>
                    <artifactId>activemq-camel</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-jaxb</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-quartz</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-bindy</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>log4j</groupId>
                    <artifactId>log4j</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                  </dependency>
                  <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                  </dependency>
            </dependencies>

              <build>
                <defaultGoal>install</defaultGoal>
                <plugins>
                  <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${version.maven-compiler-plugin}</version>
                    <configuration>
                      <source>${compiler.source.version}</source>
                      <target>${compiler.target.version}</target>
                    </configuration>
                  </plugin>
                </plugins>
              </build>

              <distributionManagement>
                <repository>
                  <id>com.ge.ip.snapshot.local</id>
                  <name>GE IP Releases</name>
                  <url>http://10.0.0.12:8082/nexus/content/repositories/releases</url>
                  <!-- <url>http://10.84.143.123:8082/nexus/content/repositories/releases</url> -->
                </repository>
                <snapshotRepository>
                  <id>com.ge.ip.snapshot.local</id>
                  <name>GE IP Snapshots</name>
                  <url>http://10.0.0.12:8082/nexus/content/repositories/snapshots</url>
                  <!-- <url>http://10.84.143.123:8082/nexus/content/repositories/snapshots</url> -->
                </snapshotRepository>
              </distributionManagement>

            </project>

【问题讨论】:

  • 很抱歉我没有添加错误信息。执行命令时出错:无法在功能 fadec-application-1.0.0 中启动捆绑 mvn:com.ibm.msg.client.osgi/commonservices-j2se/7.5.0.2:捆绑 com.ibm.msg 中未解决的约束。 client.osgi.commonservices.j2se [406]:无法解析 406.0:缺少需求 [406.0] osgi.wiring.package; (osgi.wiring.package=com.ibm.msg.client.commonservices)[引起:无法解析407.0:缺少需求[407.0]osgi.wiring.package; (&(osgi.wiring.package=javax.jms)(version>=1.1.0)(!(version>=1.2.0)))]
  • 还要明确一点,fuse 安装 jboss-fuse-full-6.1.0.redhat-379.zip 和 jboss-fuse-full-6.2.0.redhat-131 时不会发生这种情况。 zip, jboss-fuse-full-6.2.0.redhat-133.zip, jboss-fuse-full-6.2.0.redhat-134.zip 但它只出现在 jboss-fuse-karaf-6.3.0.redhat- 310.zip 所以我认为 jboss-fuse-karaf-6.3.0.redhat-310.zip 有一些不同
  • 您可以向红帽客户门户寻求 JBoss Fuse 产品的支持/帮助,以及迁移/更新方面的帮助。

标签: jboss apache-camel ibm-mq jbossfuse


【解决方案1】:

在 Fuse 6.2 上,提供的 JMS 版本是 1.1。这与 IBM MQ 7.5 一致。在 Fuse 6.3 上,提供的 JMS 版本是 2.0。这与 IBM MQ 8 及更高版本一致。

对于 IBM MQ 8,com.ibm.mq.osgi.allclientprereqs_8.0.0.8.jar 包提供 JMS API。您需要从包中删除 jms.jar 文件并编辑 MANIFEST.MF 文件并删除 javax.jms 的导出。

【讨论】:

    【解决方案2】:

    它是 IBM MQ 库。 7.5.0.8 库已经解决了这个问题。
    我认为这应该是接受 IBM WMQ for JBoss Fuse 6.3 支持的初始足迹 ***应该使用不低于 7.5.0.8 的版本。

    【讨论】:

      猜你喜欢
      • 2023-03-12
      • 2023-03-26
      • 2018-09-29
      • 2017-09-11
      • 1970-01-01
      • 2011-03-14
      • 1970-01-01
      • 2016-12-08
      • 2013-10-22
      相关资源
      最近更新 更多