我有一个插件项目,我需要一种方法来查找并打开插件将运行的项目中的文件。 我的变量中有一个应该位于项目内部的文件名。如何做到这一点?
谢谢!
最佳答案
对于插件内的文件资源:
Bundle bundle = Activator.getDefault().getBundle("com.your.plugin.name");
if (bundle != null) {
URL fileURL;
try {
fileURL = FileLocator.toFileURL(bundle.getEntry("/path/to/your/file/from/the/plugin/root"));
String fileSystemPathToYourFile = fileURL.getPath());
} catch (IOException exception) {
// ...
}
}
当然,您必须确保相应的资源正确包含在插件的二进制构建中(build.properties 文件中的 bin.include 属性,或插件 list 编辑器的构建选项卡中的二进制构建部分)。
如果您的文件是 JAR,您可能还需要将插件导出为目录(不是 100% 确定,可能取决于您对 JAR 资源的实际操作 - 例如将其添加到项目的构建路径或到启动配置类路径)。
关于java - 在项目树中查找资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25359812/