在卡拉夫,是否有一种方法让软件包从另一个软件包中读取属性文件?从另一个软件包中读取属性文件在卡拉夫
我有bundle1,其中包含一些类,bundle2中用途(bundle1出口包含在其行家POM经由行家束-插件的那些种类和bundle2中进口它包)。但bundle2也需要使用bundle1的属性文件。有没有办法,除了类,bundle2可以访问bundle1文件?
从我读到的一个选项是通过功能文件将属性部署到karaf等文件夹,然后可以通过蓝图从bundle2访问它。如果可能,我想避免这种情况,因为bundle1目前未作为功能部署。所以希望有一种替代方法。
嗯,我可以从它所在的包(bundle1)使用您的建议(排序...即,我必须将其更改为... getClass()。getClassLoader()...)。但是,从另一个包(bundle2)访问文件仍然会为我返回null。 –
您需要使用bundle1中的类来获取类加载器。像MyClass.getClass()。getClassLoader(),其中myclass位于bundle1中。你可以从任何包中的任何类来做到这一点,并将获得bundle1的类加载器。 –
好的,我会再试一次。但它确实需要... getClass()。getClassLoader()...,正确吗?只是想澄清,因为你的答案留下了“getClassLoader()”部分。 –