【发布时间】:2019-03-07 20:30:23
【问题描述】:
我在单独的包中创建了config.properties 文件。现在我需要从不同的 Java 包的类中读取这些数据。请建议代码行,这样即使我在云(Jenkins)上运行,也需要通过正确的目录来运行相同的代码。
点击这里查看图片1
【问题讨论】:
-
请发布一些代码示例并展示一些努力和基础知识
-
它必须在你的类路径中。
-
...
java.lang.ClassLoader#getResourceAsStream("/absolute/path/to/resource")返回一个java.io.InputStream(您可以将其传递给java.util.Properties#load())...当/absolute/path/to/resource在类路径上可用 (例如/也在 .jar 中)。采用哪个类加载器取决于环境,但Thread.currentThread().getContextClassLoader()应该是故障安全的(在所有环境中)。 -
所以:
Properties props = new Properties(); props.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("/com/cleartripqa/config/config.properties"));可以工作(当它在类路径上时)。
标签: java properties-file