从Eclipse插件中读取文件

时间:2013-01-29 14:15:35

标签: java eclipse eclipse-plugin

我需要从eclipse中的属性文件中读取配置详细信息。我已将config.properties置于与plugin.xml相同的级别,并在我调用的类文件中:

Properties properties = new Properties();
FileInputStream file;
String path = "./config.properties";
file = new FileInputStream(path);
properties.load(file);

我得到file not found exception。有没有更好的方法呢?

3 个答案:

答案 0 :(得分:3)

你还记得把它包含在构建中吗?

其次,使用类加载器资源可能更好

InputStream fileStream = myClass.getResourceAsStream( "/config.properties" );

此外,还有另一种使用

在eclipse中打开资源URL的方法
url = new URL("platform:/plugin/com.example.plugin/config.properties");
InputStream inputStream = url.openConnection().getInputStream();

答案 1 :(得分:1)

将属性文件放在项目的根目录中。这应该是user.dir系统属性指向的位置。 FileInputStream构造函数在此目录中查找该文件。

您可以通过输出系统属性来确认它在正确的目录中。

System.getProperty("user.dir");

答案 2 :(得分:0)

如果它是插件,则应告知它文件必须包含在目标中。它在build.properties文件中设置。打开它,然后查找-您尚未在其中提及您的文件。

打开plugin.xml,转到build标签,然后通过检查将文件包含在binary.build中。保存。这将正确更改build.properties文件。转到build.properties标签,再次查看文件-现在您可以看到文件已正确包含。

当然,您可以手工完成此操作,但是插件UI很方便,并且可以确保行或空格的末尾没有任何问题。

要绝对寻址插件中的文件,请查看here