我的应用程序使用 src/main/resources 目录中名为 keys 的子目录中的公共加密密钥。为了在本地访问它,我只需要将路径设置为src/main/resources/keys/<mykey>.gpg
由于 Cloudhub 上的结构不同,因此设置上述路径不起作用,我必须将其设置为${app.home}/keys/<mykey>.gpg
. 这在我直接在 Cloudhub 中设置属性时有效,但是当我在属性文件中设置它时,我收到错误消息...
Could not resolve placeholder 'app.home' in string value
"${app.home}/classes/keys/<mykey>.gpg"
当我在本地运行时,我也无法解析该属性。我的猜测是首先解析 application-${ENV}.properties 中的属性,然后设置 ${app.home} 属性,最后解析 Cloudhub 属性。
我的问题是,我该怎么做才能确保从属性文件中正确解析 ${app.home} ,或者是否有另一种方法可以在不使用它的情况下实现相同的目标?理想情况下,我们不希望每次在 Cloudhub 中重新部署应用程序时都必须设置公钥位置。
谢谢!
编辑:为了更清楚,这里是我在 application-DEV-properties 中设置属性的地方:cibc.public.key.location=${app.home}/classes/keys/<mykey>.gpg