开发时候正常,打成Jar包读取properties就出错

发布于 2021-11-17 08:47:21 字数 688 浏览 768 评论 5

下面的代码在开发时运行正常,打成jar包就出错,。。。

private Properties loadProperty() {
		if (this.prop == null) {
			try {
				System.out.println("loading property:" + path);
				InputStream in = new BufferedInputStream(new FileInputStream(new File(path)));
				System.out.println(in);
				prop = new Properties();
				System.out.println("prop:" + prop);
				prop.load(in);
				System.out.println("数据源配置文件:" + path + "读取成功");
			} catch (FileNotFoundException e) {
				e.printStackTrace();
				throw new RuntimeException(e);
			} catch (IOException e) {
				e.printStackTrace();
				throw new RuntimeException(e);
			}
		}
		return this.prop;
	}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

悸初 2021-11-21 16:05:30

上面的上面说得很对,jar包里面你得用你类.getClass().getClassLoader().get。。。。

你曾走过我的故事 2021-11-21 09:23:04

要用流读取的

终遇你 2021-11-21 07:42:37

根据某个类的ClassLoader去获取配置文件的流

2021-11-19 21:20:05

是在jar包外,传递给File的路径是绝对路径。。很奇怪,不过我检查发现不是jar包的问题,谢谢指点

哑剧 2021-11-17 17:00:06

Properties 是在jar包里,还是jar包外,如果是jar包里面,new File()应该是取不到的吧.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文