0

我正在尝试将 .jar 安装到 CQ5 OSGi,但每当我尝试使用该包中的代码时,我都会收到此错误:

03.07.2013 08:47:05.650 *ERROR* [0:0:0:0:0:0:0:1 [1372834022135] GET /content/TEST_hartmann/testdfs.html HTTP/1.1] maven.test.dfs [info.hartmann.dfs.impl.Handler] Error during instantiation of the implementation object (java.lang.NoClassDefFoundError: com/emc/documentum/fs/datamodel/core/context/Identity) java.lang.NoClassDefFoundError: com/emc/documentum/fs/datamodel/core/context/Identity

在我的项目中,我使用了 30 多个位于该 jar 文件根目录中的外部(jar)库和 3 个我自己位于 info/hartmann/dfs/impl 和 info/hartmann/dfs/api 中的类。这是我的 MANIFEST.MF

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven Bundle Plugin
Built-By: 302104
Build-Jdk: 1.7.0_17
Bnd-LastModified: 1372834487861
Bundle-ManifestVersion: 2
Bundle-Name: DFS test
Bundle-SymbolicName: maven.test.dfs
Bundle-Version: 0.0.12.SNAPSHOT
Bundle-ClassPath: .
Embed-Dependency: *;scope=compile|runtime
Embed-Transitive: true
Export-Package: info.hartmann.dfs.api,
 com.emc.documentum.fs.aspects;uses:="org.aspectj.lang",
 com.emc.documentum.fs.datamodel.admin,
 com.emc.documentum.fs.datamodel.admin.usermanagement;uses:="com.emc.documentum.fs.datamodel.core,com.emc.documentum.fs.datamodel.core.properties,com.emc.documentum.fs.datamodel.admin",
 com.emc.documentum.fs.datamodel.ci;uses:="com.emc.documentum.fs.datamodel.core,com.documentum.ci",
 com.emc.documentum.fs.datamodel.collaboration;uses:="com.emc.documentum.fs.datamodel.core",
 com.emc.documentum.fs.datamodel.core,
 com.emc.documentum.fs.datamodel.core.acl,
 com.emc.documentum.fs.datamodel.core.bpm;uses:="com.emc.documentum.fs.datamodel.core",
 com.emc.documentum.fs.datamodel.core.bpm.taskmanagement;uses:="org.example.ws_ht",
 com.emc.documentum.fs.datamodel.core.content;uses:="javax.xml.bind",
 com.emc.documentum.fs.datamodel.core.context;
  uses:="com.emc.documentum.fs.datamodel.core.profiles,
   com.emc.documentum.fs.datamodel.core.properties,
   javax.xml.bind,
   javax.servlet.http",
 com.emc.documentum.fs.datamodel.core.lifecycle;uses:="com.emc.documentum.fs.datamodel.core",
 com.emc.documentum.fs.datamodel.core.profiles,
 com.emc.documentum.fs.datamodel.core.properties,
 com.emc.documentum.fs.datamodel.core.query,
 com.emc.documentum.fs.datamodel.core.schema,
 com.emc.documentum.fs.datamodel.core.vdm;uses:="com.emc.documentum.fs.datamodel.core",
 com.emc.documentum.fs.datamodel.impl,
 com.emc.documentum.fs.datamodel.impl.soap,
 com.emc.documentum.fs.jaxws.compat,
 com.emc.documentum.fs.registry,
 com.emc.documentum.fs.registry.jaxr.impl;uses:="javax.xml.registry.infomodel,com.emc.documentum.fs.registry,javax.xml.registry",
 com.emc.documentum.fs.rt;uses:="javax.xml.bind",
 com.emc.documentum.fs.rt.annotations,
 com.emc.documentum.fs.rt.context;
  uses:="com.emc.documentum.fs.datamodel.core.profiles,
   com.emc.documentum.fs.rt,
   com.emc.documentum.fs.datamodel.core.properties,
   com.emc.documentum.fs.datamodel.core.context",
 com.emc.documentum.fs.rt.context.impl;
  uses:="com.documentum.fc.client,
   com.emc.documentum.fs.datamodel.core.content,
   com.emc.documentum.fs.datamodel.core.properties,
   com.emc.documentum.fs.rt,
   com.emc.documentum.fs.rt.impl,
   com.emc.documentum.fs.datamodel.core.profiles,
   com.documentum.ucf.server.transport,
   com.emc.documentum.fs.rt.services,
   com.emc.documentum.fs.datamodel.core.context,
   com.emc.documentum.fs.rt.impl.servicemodel,
   javax.xml.ws,
   javax.servlet.http,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.rt.context.impl.compat;uses:="com.emc.documentum.fs.rt.context.impl",
 com.emc.documentum.fs.rt.context.impl.reflection,
 com.emc.documentum.fs.rt.handlers;
  uses:="com.emc.documentum.fs.rt.context.impl,
   javax.xml.ws.handler,
   javax.xml.ws.handler.soap,
   com.emc.documentum.fs.rt.impl,
   com.emc.documentum.fs.datamodel.impl.soap,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.rt.impl;
  uses:="com.emc.documentum.fs.rt.context.impl,
   com.documentum.operations.contentpackage,
   com.emc.documentum.fs.datamodel.core.content,
   javax.xml.ws.handler,
   javax.servlet,
   javax.xml.ws,
   javax.servlet.http",
 com.emc.documentum.fs.rt.impl.configuration,
 com.emc.documentum.fs.rt.impl.content;uses:="com.emc.documentum.fs.datamodel.core,com.emc.documentum.fs.datamodel.core.content,com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.rt.impl.handler;uses:="javax.xml.ws.handler,javax.xml.ws.handler.soap",
 com.emc.documentum.fs.rt.impl.notification;
  uses:="com.emc.documentum.fs.datamodel.core.content,
   com.documentum.ucf.common.notification,
   com.documentum.operations,
   com.emc.documentum.fs.rt.impl",
 com.emc.documentum.fs.rt.impl.pipe;
  uses:="com.sun.xml.ws.api.pipe,
   com.sun.xml.ws.api.message,
   com.sun.xml.ws.api.pipe.helper,
   com.sun.xml.ws.api,
   javax.xml.bind,
   com.sun.xml.ws.util.pipe",
 com.emc.documentum.fs.rt.impl.richtext;uses:="com.emc.documentum.fs.datamodel.core,com.documentum.fc.common,com.documentum.services.richtext",
 com.emc.documentum.fs.rt.impl.servicemodel;
  uses:="javax.jws.soap,
   com.emc.documentum.fs.rt,
   javax.jws,
   javax.xml.bind",
 com.emc.documentum.fs.rt.impl.tx;uses:="com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.rt.impl.ucf;
  uses:="com.documentum.operations.contentpackage,
   com.emc.documentum.fs.datamodel.core.content,
   com.documentum.operations,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.rt.impl.ucf.client;
  uses:="com.documentum.operations.contentpackage,
   com.emc.documentum.fs.datamodel.core.content,
   com.documentum.operations,
   com.emc.documentum.fs.rt.impl.ucf",
 com.emc.documentum.fs.rt.impl.ucf.server;
  uses:="com.documentum.operations.contentpackage,
   com.emc.documentum.fs.datamodel.core.content,
   com.documentum.operations,
   com.emc.documentum.fs.rt.impl.ucf,
   com.documentum.ucf.server.contentpackage",
 com.emc.documentum.fs.rt.impl.walker;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.core.content,
   com.emc.documentum.fs.rt.impl,
   com.documentum.ucf.server.transport,
   com.documentum.fc.common,
   com.emc.documentum.fs.rt.impl.content",
 com.emc.documentum.fs.rt.services;
  uses:="com.emc.documentum.fs.datamodel.core.content,
   com.emc.documentum.fs.datamodel.core.context,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.rt.services.impl;uses:="com.emc.documentum.fs.datamodel.core.content,com.emc.documentum.fs.datamodel.core.context,javax.servlet.http",
 com.emc.documentum.fs.rt.ucf;uses:="javax.servlet.http",
 com.emc.documentum.fs.services.admin;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   com.emc.documentum.fs.datamodel.admin,
   com.emc.documentum.fs.datamodel.admin.usermanagement,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.admin.client;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.admin,
   com.emc.documentum.fs.datamodel.admin.usermanagement,
   com.emc.documentum.fs.rt.impl.servicemodel,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.bpm;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   com.emc.documentum.fs.datamodel.core.bpm,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.bpm.client;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.core.bpm,
   com.emc.documentum.fs.rt.impl.servicemodel,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.ci;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.ci.client;uses:="com.emc.documentum.fs.datamodel.core,com.emc.documentum.fs.rt.impl.servicemodel,com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.collaboration;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   javax.xml.bind,
   javax.xml.ws,
   com.emc.documentum.fs.datamodel.collaboration,
   javax.xml.namespace",
 com.emc.documentum.fs.services.collaboration.client;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt.impl.servicemodel,
   com.emc.documentum.fs.rt.context,
   com.emc.documentum.fs.datamodel.collaboration",
 com.emc.documentum.fs.services.core;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.core.properties,
   com.emc.documentum.fs.rt,
   com.emc.documentum.fs.datamodel.core.query,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace,
   com.emc.documentum.fs.datamodel.core.schema",
 com.emc.documentum.fs.services.core.acl;
  uses:="com.emc.documentum.fs.datamodel.core.acl,
   com.emc.documentum.fs.rt,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.core.acl.client;uses:="com.emc.documentum.fs.datamodel.core.acl,com.emc.documentum.fs.rt.impl.servicemodel,com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.core.client;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.core.properties,
   com.emc.documentum.fs.datamodel.core.query,
   com.emc.documentum.fs.rt.impl.servicemodel,
   com.emc.documentum.fs.datamodel.core.schema,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.core.lifecycle;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.core.lifecycle.client;uses:="com.emc.documentum.fs.datamodel.core,com.emc.documentum.fs.rt.impl.servicemodel,com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.core.vdm;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.core.vdm.client;uses:="com.emc.documentum.fs.datamodel.core,com.emc.documentum.fs.rt.impl.servicemodel,com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.impl.adapters;
  uses:="com.emc.documentum.fs.datamodel.core.profiles,
   com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.core.content,
   com.emc.documentum.fs.datamodel.core.properties,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.services.impl.utils;uses:="com.emc.documentum.fs.datamodel.core",
 com.emc.documentum.fs.services.search;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.rt,
   com.emc.documentum.fs.datamodel.core.query,
   javax.xml.bind,
   javax.xml.ws,
   javax.xml.namespace",
 com.emc.documentum.fs.services.search.client;
  uses:="com.emc.documentum.fs.datamodel.core,
   com.emc.documentum.fs.datamodel.core.query,
   com.emc.documentum.fs.rt.impl.servicemodel,
   com.emc.documentum.fs.rt.context",
 com.emc.documentum.fs.tracing;uses:="com.emc.documentum.fs.rt.impl,com.emc.documentum.fs.tracing.core",
 com.emc.documentum.fs.tracing.core
Service-Component: OSGI-INF/info.hartmann.dfs.impl.Handler.xml
Tool: Bnd-2.1.0.20130426-122213

我使用 Apache Maven 创建 jar 包,所以这里是我的 POM.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>maven.test</groupId>
  <artifactId>test-dfs</artifactId>
  <version>0.0.12-SNAPSHOT</version>
  <name>DFS test</name>

  <build>
      <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-scr-plugin</artifactId>
            <version>1.9.0</version>
            <executions>
              <execution>
                <id>generate-scr-scrdescriptor</id>
                <goals>
                  <goal>scr</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
            <plugin>
              <artifactId>maven-jar-plugin</artifactId>
              <configuration>
                <archive>  
                  <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
                </archive> 
              </configuration>
            </plugin>  
            <plugin>   
              <groupId>org.apache.felix</groupId>
              <artifactId>maven-bundle-plugin</artifactId>
              <configuration>
                <instructions>
                    <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
                    <Embed-Transitive>true</Embed-Transitive>
                    <Export-Package>${project.exports}</Export-Package>  
                </instructions>
              </configuration>
              <executions>
                <execution>
                  <id>bundle-manifest</id>
                  <phase>process-classes</phase>
                  <goals>    
                    <goal>manifest</goal>
                  </goals>   
                </execution>
              </executions>
            </plugin>
            <plugin>
               <artifactId>maven-assembly-plugin</artifactId>
               <version>2.4</version>
               <configuration>
                  <descriptorRefs>
                     <descriptorRef>jar-with-dependencies</descriptorRef>
                  </descriptorRefs>
               </configuration>
            </plugin>
      </plugins>
  </build>

  <dependencies>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-activation</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/activation.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-aspectjrt</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/aspectjrt.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-collaboration</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/collaboration.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-commons-io</artifactId>
        <version>1.2.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/commons-io-1.2.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-commons-lang</artifactId>
        <version>2.4.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/commons-lang-2.4.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-admin-services-remote</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/emc-admin-services-remote.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-bpm-services-remote</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/emc-bpm-services-remote.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-ci-services-remote</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/emc-ci-services-remote.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-dfs-rt-remote</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/emc-dfs-rt-remote.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-dfs-services-remote</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/emc-dfs-services-remote.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>emc-search-services-remote</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/emc-search-services-remote.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>FastInfoset</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/FastInfoset.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>http</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/http.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jaxb1-impl</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jaxb1-impl.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jaxb-api.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jaxb-impl</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jaxb-impl.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jaxws-api</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jaxws-api.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jaxws-rt</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jaxws-rt.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jsr173_api</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jsr173_api.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jsr181-api</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jsr181-api.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>jsr250-api</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/jsr250-api.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>log4j</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/log4j.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>mimepull</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/mimepull.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>resolver</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/resolver.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>saaj-api</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/saaj-api.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>saaj-impl</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/saaj-impl.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>servlet</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/servlet.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>sjsxp</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/sjsxp.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>stax-ex</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/stax-ex.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>streambuffer</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/streambuffer.jar</systemPath>
    </dependency>
    <dependency>
        <groupId>com.emc</groupId>
        <artifactId>xerces-impl</artifactId>
        <version>1.0.0</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/src/main/resources/xerces-impl.jar</systemPath>
    </dependency>
    <dependency>
      <!-- scr annotations - for generating component descriptors only -->
      <groupId>org.apache.felix</groupId>
      <artifactId>org.apache.felix.scr.annotations</artifactId>
      <version>1.7.0</version>
      <scope>provided</scope>
    </dependency>



  </dependencies>

  <properties>
    <depl.user>user</depl.user>
    <depl.password>password</depl.password>
    <depl.host>localhost</depl.host>
    <depl.port>4502</depl.port>
  </properties>

</project>

我很感激任何帮助

编辑这是我的 jar 文件的样子

|   activation.jar
|   aspectjrt.jar
|   collaboration.jar
|   commons-io-1.2.jar
|   commons-lang-2.4.jar
|   dfc.properties
|   emc-admin-services-remote.jar
|   emc-bpm-services-remote.jar
|   emc-ci-services-remote.jar
|   emc-collaboration-services-remote.jar
|   emc-dfs-rt-remote.jar
|   emc-dfs-services-remote.jar
|   emc-search-services-remote.jar
|   FastInfoset.jar
|   http.jar
|   jaxb-api.jar
|   jaxb-impl.jar
|   jaxb1-impl.jar
|   jaxws-api.jar
|   jaxws-rt.jar
|   jsr173_api.jar
|   jsr181-api.jar
|   jsr250-api.jar
|   log4j.jar
|   mimepull.jar
|   resolver.jar
|   saaj-api.jar
|   saaj-impl.jar
|   servlet.jar
|   sjsxp.jar
|   stax-ex.jar
|   streambuffer.jar
|   xerces-impl.jar
|   
+---info
|   \---hartmann
|       \---dfs
|           +---api
|           |       HandlerApi.class
|           |       
|           \---impl
|                   Activator.class
|                   Handler.class
|                   
+---META-INF
|   |   MANIFEST.MF
|   |   
|   \---maven
|       \---maven.test
|           \---test-dfs
|                   pom.properties
|                   pom.xml
|                   
\---OSGI-INF
        info.hartmann.dfs.impl.Handler.xml
4

2 回答 2

0

具体不了解 CQ5,但在 OSGi 容器中,您应该将库安装为单独的 OSGi 包,并使用 Import-Package 将它们放入类路径中。

如果它们未启用 osgi,则需要找到 OSGified 版本,使用 bnd 工具将它们 osgified 或使用正确的手工 OSGi 清单文件打包它们。

于 2013-07-03T07:48:13.537 回答
0

在清单中,包 info.hartmann.dfs.impl 未列出,bnd(除非明确删除)将这些包列为 Private-Package。我也没有在 POM 中看到你如何包含你的私有包,因为你只使用 project.exports。

现在,在这种情况下,错误消息令人困惑……它表明 Handler 类存在,但对 documentum API 不可见。不知道发生了什么...

于 2013-07-03T08:13:01.100 回答