我为cloudfoundry / pivotal webservices中托管的应用程序定义了以下用户提供的env变量:
MY_VAR=test
我试图像这样访问:
System.getProperty("MY_VAR")
但是我得到了回报。任何关于我做错的想法都会受到赞赏。
答案 0 :(得分:3)
环境变量和系统属性是两回事。如果您使用cf set-env my-app MY_VAR test
设置环境变量,那么您将使用System.getenv("MY_VAR")
而不是System.getProperty
在Java中检索它。
更好的选择是利用@Value
注释等功能来利用Spring环境抽象。如Spring Boot documentation所示,这允许您指定作为环境变量,系统属性,静态配置或外部配置注入应用程序的值,而无需应用程序代码显式检索值。