- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在用 Java 编写应用程序,我需要在 AWS EC2 机器 (Linux) 中使用环境变量。我正在使用 System.getenv("myvariable")
在应用程序中获取特定的环境变量。我需要设置永久环境变量,目前我已经在 ~/.bashrc
中设置了变量, ~/.profile
还有~/.bash_profile
.我给 export myvariable=xyz
在所有 3 个文件中,然后我运行 source ~/.bashrc
, source ~/.profile
和 source ~/.bash_profile
。但是我在应用程序中得到了空值。
我仍然不明白为什么即使我在 ~/.bash_profile
中导出变量,我也无法获取任何环境变量。 .我什至通过运行 echo $myvariable
进行了检查 我可以看到 xyz。
如果我按照上面设置的相同方式在我的本地 MAC 机器中设置相同的环境变量,并使用相同的 shell 运行相同的 java 代码,我可以看到带有值的变量。
所以基本上我每次在我的 AWS EC2 linux 机器上都得到 null。
还有其他地方需要设置变量吗?我什至重新启动了机器,但没有帮助。
最佳答案
听起来问题出在您如何设置 env 变量。 Sudo 默认不保留它们,因此您需要使用 sudo -E
选项。
这在以下内容中有更详细的解释:How to keep Environment Variables when Using SUDO
关于java - 如何在 AWS EC2 Linux 中添加环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41387747/
我是一名优秀的程序员,十分优秀!