В комплекте OSGi в моем приложении у меня есть файл свойств, содержащий имя ontologymapping.properties
. Теперь я хочу прочитать содержимое этого файла свойства. В некотором примере кода я нашел что-то вроде этого в методе запуска пучка:Как использовать файл свойств в пакете OSGi
public void startObservationAdapter(BundleContext context) {
String filename = context.getProperty("ontologymapping.properties");
try {
File file = new File(filename);
InputStream in = new FileInputStream(file);
ontologymapping.load(in);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
где ontologymapping
является экземпляром свойства. Когда я запускаю этот код, JVM не может найти файл. Я думаю, причина в том, что файл не включен в BundleContext. Как я могу это сделать? Или какой еще способ прочитать содержимое файла свойств? Пакет не является декларативным, это набор апи для другого, который является декларативным.
context.getProperty не делает то, что вы думаете. Также: В каком пакете находится файл «ontologymapping.properties», а у пакета есть этот код? Сказали, почему нет http://www.osgi.org/javadoc/r4v42/org/osgi/service/cm/ConfigurationAdmin.html? –