在卡拉夫,是否有一種方法讓軟件包從另一個軟件包中讀取屬性文件?從另一個軟件包中讀取屬性文件在卡拉夫
我有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()」部分。 –