我正在运行一个jar,它从代码中的属性读取。现在,我想在环境级别设置一些变量,并将其作为命令行参数传递以覆盖属性。我该怎么办?
例如:
java -jar test.jar --server.http.host-url=https://x.com
在以上命令中,将属性值server.http.host-url设置为名为“ server.http.host.value”的env变量。我如何将其作为变量传递,以便从这样的环境变量中解析
java -jar test.jar --server.http.host-url=${server.http.host.value}
答案 0 :(得分:3)
根据外壳程序的不同,您使用的环境变量名称可能会有不同的限制,但是在大多数情况下,不允许使用.
,因此请使用类似SERVER_HTTP_HOST_VALUE
的名称来命名变量,并像这样使用它:
java -jar test.jar --server.http.host-url=$SERVER_HTTP_HOST_VALUE