gpt4 book ai didi

java - ${catalina.base}/lib 子目录下的属性文件解析

转载 作者:行者123 更新时间:2023-11-28 23:27:24 26 4
gpt4 key购买 nike

我有一个 Tomcat 7(.0.42) 实例,其中有 lib/hosts 目录(更具体地说在 ${catalina.base} 中),具有多个特定于主机的属性(比如 qa1.properties、qa2.属性等)。

当尝试加载属性文件时,它使用:

applicationContext.getResource("classpath:hosts/qa1.properties").exists()

它失败了,因为 exists() 返回 false。该文件显然位于 hosts 子目录中。如果文件被复制/移动到 lib 目录,它可以通过调用类似的代码正常工作:

applicationContext.getResource("classpath:qa1.properties").exists()

这里使用了Spring的实现类ClassPathResource,它调用

return this.classLoader.getResource("hosts/qa1.properties");

类加载器实例是org.apache.catalina.loader.WebappClassLoader

根据Spring规范,location可以指定子目录(如classpath:/path/to/file)。为什么它在这里不起作用?

最佳答案

结果是 hosts 子目录缺少 +x 权限。

关于java - ${catalina.base}/lib 子目录下的属性文件解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35162436/

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