c0d*_*d3x 14 java eclipse properties
我在Eclipse中创建了一个动态Web项目.我在src目录中创建了一个属性文件:
<project-root>/src/props.properties
Run Code Online (Sandbox Code Playgroud)
我在调试模式下通过Eclipse启动Tomcat.现在我想从我的一个POJO中读取属性文件,但是我得到了一个FileNotFoundException.当前路径似乎是Eclipse路径.
我在网上寻找解决方案,但没有一个能为我工作.也许我做错了什么.代码是这样的:
File file = new File("props.properties");
FileReader reader = new FileReader(file);
properties.load(reader);
Run Code Online (Sandbox Code Playgroud)
我应该如何访问属性文件?它应该放在哪里?
提前致谢.
obj*_*cts 23
如果它是一个Web应用程序,那么属性将部署到WEB-INF/classes,并且可以使用类加载器加载
InputStream in = {NameOfClassWhereThisisInvoked}.class.getResourceAsStream("/props.properties");
properties.load(in);
in.close();
Run Code Online (Sandbox Code Playgroud)
实际上,无论是否是webapp,都应该有效.
我假设src被定义为源文件夹
您的项目是否设置为自动构建?如果是这样(或者您正在手动构建),请检查是否props.properties出现在项目的输出文件夹中(在 Eclipse 中,这通常是“bin”,但可能是 WebRoot 或其他内容,具体取决于项目的设置方式)。
当项目构建时,它应该复制配置文件以及编译的类、JSP 等。但是,我相信文件读取器默认使用 JVM 的主目录作为其源代码。在 Eclipse 的情况下,这意味着您的props.properties文件必须位于项目根目录中,即不是“src”文件夹中。