yes*_*vin 0 java environment-variables cloud-foundry
是否可以从 Java 应用程序中侦听环境变量中的更改事件?我很想知道如何实际识别底层环境变量在运行时发生了变化并对其采取行动?在下面的代码中,我希望env.var在环境发生变化时通知应用程序。我们在 PCF 平台上使用 Java 8。
@Value("${env.var}")
private String envVar;
Run Code Online (Sandbox Code Playgroud)
根据您的操作系统平台,这是不可能的;每个进程都会获得环境变量的副本,实际上并没有“全局”环境表这样的东西 - 负责启动大多数进程的进程的环境变量似乎是全局的,也许,因为您继承启动进程的进程中的环境变量(除非在启动进程期间,应用了对环境变量的修改),因此您实际上要求的是“我能否观察到环境变量的任何更改,就像在产生的进程中一样” me',除其他外,从安全角度来看,这是相当多毛的,这导致了相当明显的答案:不,你不能这样做。
也许退后一步,描述你试图解决的实际问题。也许您希望能够实时配置您的应用程序,并且您选择了“此设置将通过我的操作系统的环境变量系统传送到应用程序”——这是实现设置系统目标的众多方法之一。这是一种不太适合实时更新的方式。
如果您改为通过文件传达设置,那么在文件上保持“监视”并在文件更改时触发重新读取要简单得多,例如。
| 归档时间: |
|
| 查看次数: |
251 次 |
| 最近记录: |