【问题标题】:System.getenv() Not Pulling Any Env Vars in Android Studio?System.getenv() 没有在 Android Studio 中提取任何环境变量?
【发布时间】:2016-04-21 12:42:12
【问题描述】:

我在一个 Android 项目中使用了 retrolambda。我在我的 .bashrc 中设置了两个用于导出的 env 变量,即 JAVA7_HOME 和 JAVA8_HOME,它们指向两个 Java SDK 的绝对路径,之后我再次获取 .bashrc。

但是,尝试编译我的项目会给我一个错误。当我打印出 System.getEnv("JAVA7_HOME") 的结果时,我得到了 null。然而,奇怪的是,当我在终端中为变量运行 env 和 grep 时,我会在那里看到它们。最奇怪的是,甚至直接将路径作为字符串分配给 JDK 似乎都不起作用。我已尝试重新启动 Android Studio 和我的计算机,以防万一我对 .bashrc 的更改没有生效,但没有任何效果。

有没有人对这个问题有任何见解,或者我还能尝试什么?我运行 Mac OS X 是为了物有所值。

【问题讨论】:

  • "当我打印出 System.getEnv("JAVA7_HOME")" 的结果时——嗯,从哪里打印出来? build.gradle?您在 Android 设备上运行的 Java 代码?其他地方?
  • 来自 build.gradle。由于出现编译器错误,我无法从设备打印任何内容。
  • AFAIK,环境变量未传递到 Android Studio 使用的分叉 Gradle 进程中。

标签: android macos bash environment-variables retrolambda


【解决方案1】:

示例:如何设置环境变量

Windows:在终端窗口中,键入以下内容:

set HTTP_PROXY=myserver:1981

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

export HTTP_PROXY=myserver:1981

或者,将其添加到您的 ~/.bash_profile 文件中,并按如下方式获取文件:

export HTTP_PROXY=myserver:1981
source ~/.bash_profile

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-04
    • 2015-11-08
    • 2019-10-30
    • 2016-04-14
    • 2015-06-29
    • 2019-07-10
    • 1970-01-01
    • 2021-12-20
    相关资源
    最近更新 更多