我看了几个相关链接,例如this,但我的java程序似乎无法选择/.bashrc
中定义的环境变量,/.bash_profile
这是我的bash_profile
(bashrc是相同的)
export JBOSS_HOME=/Applications/whp-jboss-cluster-5
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home/
export FDP_HOME=/Users/kodeseeker/Project/git_intuit/
export TOMCAT_HOME=/Library/Tomcat/
export GIT_HOME=/Users/kodeseeker/Project/git_intuit
export MULE_HOME=/usr/local/mule/mule-enterprise-standalone-3.6.0-M2
echo $MULE_HOME returns
/usr/local/mule/mule-enterprise-standalone-3.6.0-M2 as well.
但打印
Map<String, String> env = System.getenv();
for (String envName : env.keySet()) {
System.out.println(
envName + " "+
env.get(envName));
}
System.out.println("****");
System.out.println(env.get("MULE_HOME"));// returns null.
两者都使用相同的shell 从输出中看日食:
SHELL /bin/bash
APP_ICON_12441 ../Resources/Eclipse.icns
TMPDIR /var/folders/jc/bpc8py6s47jftq8mny923n4r5jfsj2/T/
echo $SHELL
/bin/bash
我已经尝试退出,重新启动终端等但无济于事。任何见解或链接将不胜感激。
答案 0 :(得分:1)
.bashrc
或.bash_profile
不会被考虑,因为这些文件是为交互式shell使用的设置而设计的。
要使变量对eclipse可见,请导航至
运行 - &gt;运行配置
选择环境选项卡,然后添加变量。
另一种方法是创建一个文件(或编辑,如果它已经存在)/etc/launchd.conf
并在此文件中设置变量,例如:
setenv MY_VARIABLE MY_VALUE
别忘了重新启动。
请注意,这适用于OSX(OP操作系统),但对于普通Linux,您可以编辑/etc/environment