在MAC应用程序的Play应用程序中使用环境变量

时间:2017-09-15 09:57:23

标签: java macos playframework environment-variables

这篇文章就是我从Java Play应用程序中引用环境变量的注意事项 - https://www.playframework.com/documentation/2.6.x/ProductionConfiguration#Using-environment-variables

在我的application.conf文件中,我将值配置为 - rabbitmq.hosts="rabbit.queue.service"
rabbitmq.hosts=${?MQ_BROKER_HOSTS}

我正在我的MAC中对其进行本地测试,即使我已为MQ_BROKER_HOSTS设置了环境变量,它始终会获取默认值rabbit.queue.service

这些是我在本地MAC中将MQ_BROKER_HOSTS设置为环境变量所做的事情 -

创建了一个文件〜/ .profile 并在那里添加了这一行:
export MQ_BROKER_HOSTS=localhost

在文件〜/ .bash_profile 中添加了这一行 -
export MQ_BROKER_HOSTS=localhost

然后我跑了这个命令 -
$ source ~/.profile
$ source ~/.bash_profile

之后我打开了一个新终端并运行了命令env,我可以在变量列表中看到变量MQ_BROKER_HOSTS

我也运行命令printenv,即使变量列表中存在变量MQ_BROKER_HOSTS

我也尝试了echo $MQ_BROKER_HOSTS并打印输出localhost

任何人都可以告诉我为什么我的Play应用程序无法选择环境变量。我是否在我的MAC中正确设置了环境变量,或者我的应用程序中缺少任何内容。

在我的播放应用程序中,我将值取为 -
conf.getString("rabbitmq.hosts")
其中conf是Play Configuration类的实例。

我已经花了很多时间来解决这个问题,任何建议都会非常感激。感谢。

0 个答案:

没有答案