Apache camel JBoss Fuse-捆绑包的相对路径

Apache camel JBoss Fuse-捆绑包的相对路径,apache-camel,apache-karaf,osgi-bundle,fuseesb,jbossfuse,Apache Camel,Apache Karaf,Osgi Bundle,Fuseesb,Jbossfuse,我有一个camel项目,其中使用了javabean引用。 在这个.java文件中,我正在读取一个路径为src/main/resources/basic.xml的文件 FileNotFound /home/user/jboss-fuse-xx/instances/testCOntainer/src/main/resources/basic.xml 我使用ApacheFelix构建osgi包,并编写指令: <Include-Resource>src/main/resources<

我有一个camel项目,其中使用了javabean引用。 在这个.java文件中,我正在读取一个路径为src/main/resources/basic.xml的文件

FileNotFound /home/user/jboss-fuse-xx/instances/testCOntainer/src/main/resources/basic.xml
我使用ApacheFelix构建osgi包,并编写指令:

<Include-Resource>src/main/resources</Include-Resource>
如果我像basic.xml一样更改.java上的路径,结果是:

FileNotFound /home/user/jboss-fuse-xx/instances/testCOntainer/basic.xml
所以相对路径是容器根路径,我在这里部署这个包

解决这个问题的简单方法是将basic.xml放在这个路径中,我知道:p,但是有其他方法吗

是否有apache felix指令可以解决此问题???因此,无论在何处部署,捆绑包都可以解析此路径

我以前使用过Import-package指令,它工作得很好,但只有在驼峰路径上“调用”此资源时,而不是在java类中


谢谢你的回答

尝试getClass.getClassLoader.getResourceAsStreambasic.xml;在您的.java中访问您的文件。谢谢您的回答。现在找到了basic.xml文件,问题是这个xml调用了另一个文件dtd,并且再次在容器根路径中搜索它,这与java中使用的类似,但是对于xml??如果是spring/blueprints上下文,您可以尝试“classpath:resource/some_file.xml”而不是“resource/some_file.xml”。不确定它是否适用于dtd。我正在使用两个项目,一个发送程序和一个接收字节。。。我只是编辑其中一个,跳过另一个。问题解决了。谢谢你,怀特!!