【问题标题】:How to read properties file, which is in another package of a java project?如何读取位于 java 项目的另一个包中的属性文件?
【发布时间】: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


【解决方案1】:

最好将文件放到资源文件夹(src/main/resources)并使用类加载器来获取它,如上所述。

【讨论】:

    猜你喜欢
    • 2015-11-19
    • 2013-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    相关资源
    最近更新 更多