【问题标题】:Properties contactenation failed属性联系失败
【发布时间】:2017-03-18 14:46:51
【问题描述】:

我在一个项目上工作了几个星期,但我在属性文件方面遇到了一些问题。

我使用两个属性文件:

  • project_default.properties(通用配置,独立于环境)
  • project_custom.properties(环境特定配置)

project_default.properties

project.url=
project.url.front=${project.url}/index.html#
project.uri.link=${project.url.front}/element/{0}/step

project_custom.properties

project.url=http://domainName.extension

在我自己的服务器上(相同的操作系统、JVM 和 Tomcat 版本): 没问题!

在我客户的每台服务器上: 使用 project.uri.link

时出错

我暂时通过绕过串联来修补它,但它并不专业。

遇到过这样的问题吗?有什么想法吗?

提前致谢!

额外信息:

  • 文件 project_default.properties 被打包在 WAR 中
  • project_custom.properties 文件已外部化。

【问题讨论】:

  • AFAIK,此字符串插值在 application.properties 文件中有效,但可能不适用于 Spring Boot 中的任何常规属性文件(请参阅 Placeholders in properties

标签: java spring jakarta-ee spring-boot properties-file


【解决方案1】:

java.util.Properties 将不支持将此解析值转换为另一个.. 因为它适用于简单的字符串值。

属性键和值应该是字符串。它们不会发生任何处理,因此您不能在值中引用另一个值。

查看 Apache 配置,

http://commons.apache.org/configuration/

它支持变量插值,这可能就是您正在寻找的。​​p>

【讨论】:

  • 谢谢!这正是我正在寻找的。 Apache Common Configuration 是否支持注解(未找到)?
  • 我相信不会.. 你可能需要使用它的 API 调用来实现这一点
猜你喜欢
  • 2015-07-25
  • 2011-01-07
  • 2017-06-25
  • 2011-03-19
  • 1970-01-01
  • 1970-01-01
  • 2013-04-07
  • 2018-02-08
相关资源
最近更新 更多