Eclipse中的环境variables
我能够从命令提示符运行示例hadoop程序,并试图从Eclipse运行相同的程序,以便我可以debugging它,并更好地理解它。
对于命令行程序,在.bashrc
中设置了一些环境variables,并在hadoop程序中读取为System.getenv().get("HADOOP_MAPRED_HOME")
。 但是,当我从System.getenv().get("HADOOP_MAPRED_HOME")
运行java程序时,我得到空值。
我尝试从Eclipse -DHADOOP_MAPRED_HOME=test
传递给运行时configuration中的VM参数,但在独立程序中仍然为空。 如何使Eclipse中的环境variables可见? 当我在Eclipse中通过System.getenv()
进行迭代时,我看到很多像DISPLAY
, USER
, HOME
和其他variables。 他们在哪里设置? 我正在使用Ubuntu 11.04。
.bashrc文件用于设置交互式loginshell使用的variables。 如果你想在Eclipse中使用这些环境variables,你需要把它们放在/ etc / environment中。
您也可以定义一个仅在Eclipse中可见的环境variables。
转到运行 – >运行configuration…并select选项卡“环境”。
在那里你可以添加几个特定于你的应用程序的环境variables。
我为此创build了一个eclipse插件,因为我有同样的问题。 随意下载并作出贡献。
它还处于早期发展阶段,但它已经为我做好了工作。
https://github.com/JorisAerts/Eclipse-Environment-Variables
您可以通过向VM发送-Dhadoop.home.dir来设置Hadoop主目录。 要发送这个参数给你在eclipse中执行的所有应用程序,你可以在Window-> Preferences-> Java-> Installed JREs->(select你的JRE安装) – > Edit ..->中设置它们的值“默认VM参数:”文本框)。 您可以将$ {HADOOP_HOME}replace为您的Hadoop安装path。
你也可以在shell中启动eclipse。
在调用eclipse之前,输出enronment。
例如#!/bin/bash export MY_VAR="ADCA" export PATH="/home/lala/bin;$PATH" $ECLIPSE_HOME/eclipse -data $YOUR_WORK_SPACE_PATH
然后你可以在eclipse上有自己的custome环境包括工作区的多个实例。
对于想要在Eclipse项目中覆盖OS的环境variables的人员,请参阅@MAX回答。
当你在同一台机器上有发布项目end eclipse项目时,这很有用。
发布项目可以使用OS环境variables作为testing用途,eclipse项目可以覆盖开发使用。