【问题标题】:Eclipse does not recognize environment variablesEclipse 无法识别环境变量
【发布时间】:2014-12-16 20:24:17
【问题描述】:

Eclipse 完全忽略了我所有的环境变量,例如它是我的路径变量的版本:

Eclipse:
ANDROID_NDK=
PATH=[/usr/bin:/bin:/usr/sbin:/sbin]

壳牌:
ANDROID_NDK=/Users/myname/SDKs/AndroidSDK/NDK/android-ndk-r7c
PATH=/Users/myname/local/node/bin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Users/myname/SDKs/andoird-sdks/tools:/Users/myname/SDKs/andoird-sdks/platform-tools:/Users/myname/SDKs/AndroidSDK/tools:/Users/myname/SDKs/AndroidSDK/platform-tools:/Users/myname/SDKs/AndroidSDK/NDK/android-ndk-r7c


我尝试将我的环境变量从 .bash_profile 放到 .profile,但没有成功。 eclips 从哪里得到它的环境变量?如何设置?

【问题讨论】:

  • 这些变量中有很多是一年多以前设置的,所以eclipse至少应该包含它们。但是是的,我做到了:(
  • 我不认为这是 Eclipse 的问题,而是 JVM 的环境没有 shell 环境所拥有的一切。这只是一个理论。我和 OP 有同样的问题。
  • 我实际上有一些变通方法,我最终不得不这样做 - 这基本上是一种简单但迂回的方法,可以在基于 shell 的 eclipse 中设置环境变量。我将发布作为自己问题的答案,但希望其他人会在此之前发布更好的答案
  • export变量了吗?试试declare -p ANDROID_NDK 看看bash 是否响应declare -x ANDROID_NDK=...-x 表示它已导出)。
  • 您是如何启动 Eclipse 的?当您在 KDE 中打开终端(控制台),然后运行 ​​export | grep 'ANDROID_NDK',然后运行 ​​/path/to/eclipse,Eclipse 会找到您的变量吗?如果是这样,它可能与您的窗口管理器(KDE、Gnome 等)或窗口管理器的控制台/终端配置有关,而不是与您的 JVM 或 Eclipse 设置有关。

标签: eclipse shell .bash-profile .profile


【解决方案1】:

要使环境变量在 GUI 应用程序中可见,您需要将其放入 /etc/launchd.conf。输入终端:

sudo nano /etc/launchd.conf

然后在launchd.conf中添加变量:

setenv VARIABLE_NAME variable_value

Ctrl+OEnterCtrl+X,然后重启。

【讨论】:

    【解决方案2】:

    注意:我刚刚发现项目属性窗格不能以这种方式正确加载。更多关于如何启动的研究...

    这可能是 Eclipse 的 Juno (4.2) 版本(以及 3.x 前身)中的一个错误... 这个stackoverflow article 意味着两件事

    1. 让 Eclipse 了解您的 shell 环境变量的一种方法是从 bash shell/命令行启动 Eclipse(它将因此从 shell 继承环境。

    2. 另一种方式似乎暗示了 Kepler (4.3) 之前的 Eclipse 中的一个错误:如果升级到 Kepler (4.3),则 OP 的问题就消失了。

    this article,最后是how to launch an app from command line,这对于让它在 OS X 上运行也很有用

    以下是使用 QuickSilver 作为启动器的 OS X 的分步说明。我在 ~/Applications/ 文件夹中创建了一个 .sh 文件,现在我从 QuickSilver 运行它(我认为 Spotlight 也可以实现相同的基本过程)。

    1. 我用这一行创建了 eclipse.sh 来调用 .app“文件”。对我来说,这是 ADT Bundle 的一部分,但只需将下面的路径替换为 .app 文件的路径(这是您从 Applications 文件夹或 Eclipse 安装所在的任何位置运行的图标)

    开始编辑

    My originally-posted line
    
    /Users/mike/DevInstalls/adt-bundle-mac-x86_64-20140702/eclipse/Eclipse.app/Contents/MacOS/eclipse
    
    works until I try to open the properties panels in Project Properties.  The panels won't open, so I tried the following change to fix it
    
    /Users/mike/DevInstalls/adt-bundle-mac-x86_64-20140702/eclipse/Eclipse.app/Contents/MacOS/eclipse &
    
    but this won't work when launched from Quicksilver.
    
    Either way, launching gracefully via QuickSilver has nothing to do with the OP, so I'm going to stop pulling my hair out over it. :-/
    

    结束编辑

    Then, back at the command line run "sudo chmod 755 ./eclipse.sh" to set the permission properly so it can be executed.
    

    2.a.接下来,我必须配置 QuickSilver 才能找到这个 shell 命令。为此,我按下 QuickSilver 击键,单击右上角的三角形打开其首选项,然后选择目录...,然后单击左侧的自定义,右侧添加条目的加号,然后选择文件& 文件夹扫描仪,然后选择 shell 脚本所在的文件夹,然后单击右下角的小“i”按钮,在窗口中向右展开,在“包含内容”下单击“文件夹内容”。

    2.b。或者,在 Quicksilver 首选项中,您可以在“目录”下启用“Bash 命令历史记录”。我选择不使用这种方法,这样我的 QuickSilver 历史记录就不会被命令历史记录噪音淹没。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-04
      • 2017-05-17
      相关资源
      最近更新 更多