在Android Studio中,System.getenv()无法获取任何环境变量?

3
我在一个Android项目中使用retrolambda。我在我的.bashrc中设置了两个环境变量JAVA7_HOME和JAVA8_HOME,它们指向两个Java SDK的绝对路径,并重新运行了source .bashrc。
然而,尝试编译我的项目时出现错误。当我打印System.getEnv("JAVA7_HOME")的结果时,我得到了null。奇怪的是,当我在终端中运行env并grep我的变量时,我看到它们在那里。最奇怪的是,即使直接将路径分配为JDK的字符串也似乎不起作用。我已经尝试重启Android Studio和我的计算机,以防我的对.bashrc的更改没有生效,但什么都没用。
有人能提供关于问题的见解或其他我可以尝试的方法吗?值得一提的是,我正在运行Mac OS X。

1
“当我打印出 System.getEnv("JAVA7_HOME") 的结果” - 嗯,你是从哪里打印的呢?是从 build.gradle 文件中吗?还是在运行于 Android 设备上的 Java 代码中?或者是其他地方? - CommonsWare
从 build.gradle 文件中,我无法从设备打印任何内容,因为我遇到了编译器错误。 - Rome_Leader
1
据我所知,环境变量不会传递到Android Studio使用的分叉Gradle进程中。 - CommonsWare
可能是在OS X中设置环境变量?的重复问题。 - Sagi Iltus
1个回答

1

示例:如何设置环境变量

Windows:在终端窗口中,输入以下命令:

set HTTP_PROXY=myserver:1981

Mac 和 Linux:在终端窗口中,输入以下内容:

export HTTP_PROXY=myserver:1981

或者,将其添加到您的~/.bash_profile文件中,并按以下方式源化该文件:

export HTTP_PROXY=myserver:1981
source ~/.bash_profile

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接