java - 在项目树中查找资源

标签 java eclipse eclipse-plugin

我有一个插件项目,我需要一种方法来查找并打开插件将运行的项目中的文件。 我的变量中有一个应该位于项目内部的文件名。如何做到这一点?

谢谢!

最佳答案

对于插件内的文件资源:

    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/

相关文章:

java - 如何从 Lucene 5.x 中的字段中获取 n 个第一项?

java - 将具有依赖项的 Java 库打包到 OSGi/Eclipse jar 中

java - 如何修复 Eclipse 3.6 插件安装?

java - JBehave - 运行单个场景

java - 如果浏览器不允许 cookie 怎么办

java - 写入新的文本文件

java - 在 Eclipse Luna 中安装插件时,日志中出现 "Unable to acquire PluginConverter service"和 "No repository found"错误

java - 当用户滚动到 RecyclerView 底部时,使用 ScrollListener 从 Firebase 实时数据库提取数据时出现问题

java - 无法从 javascript 获取 json 到运行中的 java

linux - 如何在远程 Linux 服务器上使用 Maven?