对不起,如果这是一个愚蠢的问题。
在 OSGi 中,我们可以在安装包时传递文件 URL:
Bundle myBundle = felix.getBundleContext().installBundle ( "file:/Felix/RootDir/MyBundle.jar" );
URL“file://Felix/RootDir/MyBundle.jar”现在唯一地标识了包。
我们是否允许传递相对 URL?比如下图:
Bundle myBundle = felix.getBundleContext().installBundle ( "file:MyBundle.jar" );
如果是这样,那么这个相对 URL 的父目录是什么?(是 felix.cache.rootdir 吗?)。
如果允许相对 URL,那么 Felix 是否在内部将相对 URL 转换为绝对 URL?也就是说,如果我这样做:
String locationID = myBundle.getLocation();
它会返回绝对 URL 还是相对 URL?
(是的,我知道每个捆绑包也有一个很长的 int ID)