gpt4 book ai didi

java - Scala jar 读取外部属性文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:56:56 25 4
gpt4 key购买 nike

我已经编写了一些代码并将其导出为 jar 文件。在这个 jar 中有一个名为 automation.properties 的文件,其中包含我正在加载的默认值

val automationPropertiesFileURL = getClass.getResource("/automation.properties")  
if (automationPropertiesFileURL != null) {
val source = Source.fromURL(automationPropertiesFileURL)
config = new Properties()
config.load(source.bufferedReader())
}

但是当这个 jar 文件被添加为 C:\User\abc\.gradle 中的 gradle 依赖项时,我想读取 automation.properties 从我当前的项目中,我如何覆盖位置并从我的项目而不是从 jar 文件本身读取文件?

最佳答案

类加载器将从它首先找到的位置加载文件。

在您的例子中,文件存在于两个地方:

  • 在当前项目本身中
  • jar 依赖中

类加载器将找到哪个文件,取决于“当前项目”的顺序和 jarclasspath 的依赖性。这就是你需要审查的,这是加载正确文件的关键。

您当前的代码是正确的,这是类路径配置的问题。

关于java - Scala jar 读取外部属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38583510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com