`
yonlist
  • 浏览: 85711 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

获取bundle的绝对路径

阅读更多

最近碰到个小麻烦,如何从bundle获取其绝对路径。

 

解决办法如下:

 

public void start(BundleContext context) throws Exception {

    String bundleName = context.getBundle().getSymbolicName();
	log.debug("bundleName:" + bundleName);
	String bundlesInfo = System.getProperty("osgi.bundles");
	int bundleNameStart = bundlesInfo.indexOf(bundleName);
	int bundleNameEnd = bundleNameStart + bundleName.length();
	String prependedBundlePath = bundlesInfo.substring(0, bundleNameEnd);
	String prefix = "reference:file:";
	int prefixPos = prependedBundlePath.lastIndexOf(prefix);
	String bundlePath = prependedBundlePath;
	if (prefixPos >= 0) {
		bundlePath = prependedBundlePath.substring(prefixPos + prefix.length(), prependedBundlePath.length());
		}
	log.info("bundlePath=" + bundlePath);

}
 

 

分享到:
评论

相关推荐

    bundle路径的使用

    详细了解ios下bundle路径的使用方法。如何创建.bundle包,如何使用bundle获取应用程序内详细信息。

    获取相机与图库 图片绝对路径

    在Android应用开发中,获取相机和图库中的图片绝对路径是一项常见的需求。用户可能需要从相机拍摄新照片或从图库选择已有图片进行编辑、上传等操作。本篇将详细介绍如何实现这一功能。 首先,我们需要在...

    Unity 之 AssestBundle打包

    1. 资源路径:打包AssestBundle时,需要确保资源的路径是相对的,而不是绝对的。 2. 资源类型:不是所有类型的Unity资源都支持打包成AssestBundle,如Scene和Prefabs。 3. 平台兼容性:不同的目标平台可能需要不同的...

    读写Android中assets目录下的文件的方法详解

    为了使`B.apk`能访问其他apk的资源并获取系统权限,开发者需要在`AndroidManifest.xml`中声明`sharedUserId`。这样,两个具有相同`sharedUserId`的应用将被视为同一用户,从而可以共享数据和权限。例如: ```xml ...

    iOS程序有固定的文件访问限制

    例如,当我们尝试使用`NSFileHandle`的`fileHandleForReadingAtPath:`方法读取文件时,必须提供文件的完整绝对路径。如果我们只提供文件名,如`@"test.txt"`,系统将无法找到文件,因为这只是一个相对路径,而不是...

    RCP 嵌入Google map(rcp执行JavaScrit方法,解决打包后路径问题)

    1. **相对路径**:使用相对路径而不是绝对路径来引用HTML文件。这需要确保HTML文件与RCP应用的主入口点在同一目录下。 2. **资源加载器**:通过Eclipse的`Platform.getBundle()`方法,获取到包含`map.html`的bundle...

    Android-拍照、打开本地相册

    本文将深入探讨如何在Android应用中实现这两个功能,并获取文件的绝对路径,以便后续处理。 首先,我们来看如何调用系统的拍照功能。在Android中,我们可以使用`Intent`来启动系统相机应用。创建一个`Intent`,设置...

    Android Jenkins文档2(使用及常见问题)2

    - 在 Jenkins 的“系统管理”中选择“环境变量”选项卡,新增一个全局环境变量,例如 SDK 的绝对路径(如 `D:\android_studio\SDK`)。 - 如果使用的是 Android Studio,则可以考虑在项目的 `local.properties` 文件...

    Eclipse插件开发培训_资源管理(入门).ppt

    核心概念包括工作区(一个抽象的概念,不直接对应于文件系统)、路径(相对和绝对路径)、资源句柄(如IResource)、资源变化监听器、Builder、Nature、Marker、ResourceInfo和FileInfo、资源树以及资源改变增量信息...

    appium_API.docx

    - `pinch(int x, int y)` 和 `zoom(int x, int y)` 与上述方法类似,但基于绝对坐标。 这些API方法使得Appium能高效地模拟用户行为,从而进行全面的自动化测试。在实际测试场景中,它们可以灵活组合使用,以实现...

    Android 开发技巧新整理【技术文档】

    - **知识点**: 如何将Uri对象转换为文件的绝对路径。 - **应用场景**: 处理从外部来源获取的文件路径。 - **实现方式**: 通过ContentResolver和Uri查询文件路径。 #### 八、国际化与动画设置 **15. Android支持...

    Java加载配置文件工具类

    这通常通过`java.io.File`类实现,指定文件的绝对路径或相对路径。如果配置文件在网络服务器上,可能需要使用HTTP或FTP客户端库来获取。 2. **解析文件**:解析配置文件的内容。对于.properties文件,可以使用`java...

    IOS开发之JSON转PLIST实例详解

    在实际的iOS应用中,通常不会直接使用绝对路径来访问文件,而是通过`NSBundle`对象获取资源文件的路径。例如,将JSON文件放在支持文件(Supporting Files)目录下,可以这样获取路径: ```objc NSString *jsonPath...

    vim的配置文件包括Youcom

    2. **获取 YouCompleteMe**:通过 Git 克隆 YCM 仓库到你的 Vim 插件目录,通常位于 `~/.vim/bundle` 或者 `~/.config/nvim/plugged`(如果你使用 Neovim)。 ``` git clone ...

    Vue-cli配置打包文件本地使用的教程图解

    output中常用的属性包括fileName(输出文件的名称)、path(输出文件存放在目标目录的绝对路径)、以及publicPath(所有资源的基础路径)。 知识点6:publicPath属性的作用 publicPath属性用于配置所有资源文件的...

    JavaWeb读取配置文件的四种方法

    这种方式比较基础,但需要配置文件的绝对路径,且不适用于容器环境。例如: ```java File file = new File("/path/to/config.properties"); FileInputStream fis = new FileInputStream(file); Properties props...

    基于webpack-hot-middleware热加载相关错误的解决方法

    在webpack配置文件中,publicPath必须是绝对路径,以确保所有资源都能被正确引用。例如: ```javascript output: { path: configs.dist, publicPath: '***', filename: '[name].bundle.js', libraryTarget: '...

    Android 文件选择器详解及实例代码

    5. `String getAbsolutePath()`:获取文件或目录的绝对路径。 6. `File[] listFiles()`:返回指定目录下的所有文件和子目录,不包括隐藏文件。 文件选择器的核心在于遍历文件系统,使用`listFiles()`方法获取目录下...

Global site tag (gtag.js) - Google Analytics