Я новичок в OSGi и создал пакет OSGi, который я запускаю в контейнере OSGi Apache Felix.
В пакете содержится файл, который мне нужно передать методу java.io.File. Чтобы создать экземпляр Файлового объекта, необходим либо URI в "file" -схеме, либо путь как строка. Как получить любой из них в чистом виде?
Я попытался использовать
context.getBundle().getResource("/myfile") (где context имеет тип org.osgi.framework.BundleContext), который возвращает URI bundle://6.0:0/myfile.
Но этот URI не может быть преобразован в экземпляр File с помощью конструктора File(URI uri), так как он имеет схему "bundle".
Можно попытаться построить путь к местоположению, зная рабочий каталог и используя bundleId моего пакета, но я сомневаюсь, что это лучшая практика.
Любые идеи?