2017-10-19 41 views
0

我在写一个karaf包,它依赖于外部jar库。我知道我可以使用wrap在我的features.xml中导入这个包,但这意味着它会被加载到它自己的类加载器中。karaf:将我的代码链接到jar文件

我想要的是我的包的类加载器加载任何我在这个jar文件中访问,我想直接调用这个jar文件中的类的方法。我怎样才能做到这一点?

我不想要一个新的包 - 只是一个库,我可以链接我的应用程序。

感谢,

回答

0

你可以尝试建立你的包如下当嵌入外部JAR:

 <plugin> 
      <groupId>org.apache.felix</groupId> 
      <artifactId>maven-bundle-plugin</artifactId> 
      <extensions>true</extensions> 
      <configuration> 
       <instructions> 
        <Export-Package> 
         ..., 
         root_package_in_external_jar*, 
         ... 
        </Export-Package> 
        <Import-Package> 
         ... 
        </Import-Package> 
        <Embed-Dependency>your_external_jar</Embed-Dependency> 
       </instructions> 
      </configuration> 
     </plugin>