5

我需要从 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. 有没有更好的方法来做到这一点?

4

3 回答 3

5

您是否记得将其包含在构建中?

其次,无论如何使用类加载器资源可能会更好

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

此外,还有另一种在 Eclipse 中打开资源 URL 的方法

url = new URL("platform:/plugin/com.example.plugin/config.properties");
InputStream inputStream = url.openConnection().getInputStream();
于 2013-01-29T14:18:08.693 回答
1

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

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

System.getProperty("user.dir");
于 2013-01-29T14:19:53.827 回答
0

如果它是一个插件,你应该告诉它你的文件必须包含在目标中。它在 build.properties 文件中设置。打开它并查看 - 你没有在那里提到你的文件。

打开 plugin.xml,转到build选项卡并通过检查将您的文件包含在 binary.build 中。节省。这将正确更改 build.properties 文件。转到build.properties选项卡并再次查看文件 - 现在您可以看到正确包含的文件。

当然,您可以手动完成,但插件 UI 很方便,您可以确保没有任何问题行尾或空格。

对于插件中的文件的绝对寻址看这里

于 2019-05-31T09:52:02.803 回答