最近碰到个小麻烦,如何从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);
}
分享到:
相关推荐
详细了解ios下bundle路径的使用方法。如何创建.bundle包,如何使用bundle获取应用程序内详细信息。
在Android应用开发中,获取相机和图库中的图片绝对路径是一项常见的需求。用户可能需要从相机拍摄新照片或从图库选择已有图片进行编辑、上传等操作。本篇将详细介绍如何实现这一功能。 首先,我们需要在...
1. 资源路径:打包AssestBundle时,需要确保资源的路径是相对的,而不是绝对的。 2. 资源类型:不是所有类型的Unity资源都支持打包成AssestBundle,如Scene和Prefabs。 3. 平台兼容性:不同的目标平台可能需要不同的...
为了使`B.apk`能访问其他apk的资源并获取系统权限,开发者需要在`AndroidManifest.xml`中声明`sharedUserId`。这样,两个具有相同`sharedUserId`的应用将被视为同一用户,从而可以共享数据和权限。例如: ```xml ...
例如,当我们尝试使用`NSFileHandle`的`fileHandleForReadingAtPath:`方法读取文件时,必须提供文件的完整绝对路径。如果我们只提供文件名,如`@"test.txt"`,系统将无法找到文件,因为这只是一个相对路径,而不是...
1. **相对路径**:使用相对路径而不是绝对路径来引用HTML文件。这需要确保HTML文件与RCP应用的主入口点在同一目录下。 2. **资源加载器**:通过Eclipse的`Platform.getBundle()`方法,获取到包含`map.html`的bundle...
本文将深入探讨如何在Android应用中实现这两个功能,并获取文件的绝对路径,以便后续处理。 首先,我们来看如何调用系统的拍照功能。在Android中,我们可以使用`Intent`来启动系统相机应用。创建一个`Intent`,设置...
- 在 Jenkins 的“系统管理”中选择“环境变量”选项卡,新增一个全局环境变量,例如 SDK 的绝对路径(如 `D:\android_studio\SDK`)。 - 如果使用的是 Android Studio,则可以考虑在项目的 `local.properties` 文件...
核心概念包括工作区(一个抽象的概念,不直接对应于文件系统)、路径(相对和绝对路径)、资源句柄(如IResource)、资源变化监听器、Builder、Nature、Marker、ResourceInfo和FileInfo、资源树以及资源改变增量信息...
- `pinch(int x, int y)` 和 `zoom(int x, int y)` 与上述方法类似,但基于绝对坐标。 这些API方法使得Appium能高效地模拟用户行为,从而进行全面的自动化测试。在实际测试场景中,它们可以灵活组合使用,以实现...
- **知识点**: 如何将Uri对象转换为文件的绝对路径。 - **应用场景**: 处理从外部来源获取的文件路径。 - **实现方式**: 通过ContentResolver和Uri查询文件路径。 #### 八、国际化与动画设置 **15. Android支持...
这通常通过`java.io.File`类实现,指定文件的绝对路径或相对路径。如果配置文件在网络服务器上,可能需要使用HTTP或FTP客户端库来获取。 2. **解析文件**:解析配置文件的内容。对于.properties文件,可以使用`java...
在实际的iOS应用中,通常不会直接使用绝对路径来访问文件,而是通过`NSBundle`对象获取资源文件的路径。例如,将JSON文件放在支持文件(Supporting Files)目录下,可以这样获取路径: ```objc NSString *jsonPath...
2. **获取 YouCompleteMe**:通过 Git 克隆 YCM 仓库到你的 Vim 插件目录,通常位于 `~/.vim/bundle` 或者 `~/.config/nvim/plugged`(如果你使用 Neovim)。 ``` git clone ...
output中常用的属性包括fileName(输出文件的名称)、path(输出文件存放在目标目录的绝对路径)、以及publicPath(所有资源的基础路径)。 知识点6:publicPath属性的作用 publicPath属性用于配置所有资源文件的...
这种方式比较基础,但需要配置文件的绝对路径,且不适用于容器环境。例如: ```java File file = new File("/path/to/config.properties"); FileInputStream fis = new FileInputStream(file); Properties props...
在webpack配置文件中,publicPath必须是绝对路径,以确保所有资源都能被正确引用。例如: ```javascript output: { path: configs.dist, publicPath: '***', filename: '[name].bundle.js', libraryTarget: '...
5. `String getAbsolutePath()`:获取文件或目录的绝对路径。 6. `File[] listFiles()`:返回指定目录下的所有文件和子目录,不包括隐藏文件。 文件选择器的核心在于遍历文件系统,使用`listFiles()`方法获取目录下...