纠结了很久终于搞定了!
pydev的官网有解释说为什么在安装pydev后,没有出现在preference中的原因是:需要 JDK>=1.7
于是下载 jkd-1.7 ,然后在 ~/.profile 中配置了 JAVA_HOME JRE_HOME 变量,然后兴高采烈的打开 eclipse ,结果还是没有
偶然之间,运行了 java -version 结果发现 版本还是 1.6 (这个1.6的版本是通过 apt-get 安装的 openjkd), 可是明明我已将 JAVA_HOME JRE_HOME等环境指向了我的jdk1.7安装路径啊。
各种抓狂,不知道原因,一气之下将 openjdk* 的所有东西卸载了。可是这样还是不行
启动 eclipse 提示没有JRE环境。 灵光一现, 难道 JRE_HOME等环境变量没有生效?
遂将 source .profile 执行一把,再执行 eclipse ,哇! 果然成功了!!!
为什么在 .profile 中配置的变量,没有执行到呢,仔细查看该文件,发现该文件的第一行这样注释:
# ~/.profile: executed by the command interpreter for login shells.
原来 login shell 的时候才执行,可是我用终端 gnome-terminal 不是 login shell ,故一直没有执行该文件!!!!
终于破了这一问题,晚安!
不好意思,是自己理解不深刻,原来.profile这个文件在用户登录的时候其实调用过了,只是我没有把.profile中的变量 export 而已!
将 JAVA_HOME JRE_HOME 等变量加入 export 修饰, 问题也解决了!
持续更新:
2014/4/15 日
今天再次启动 eclipse 的时候,打算建立一个 pydev 工程,可是 pydev 插件又不见了! java -version 又变成了 1.6 的了(安装 jvm又将java指回去了)。 通过修改 PATH 变量
PATH=$JRE_HOME/bin:$PATH 修复。
最终明白,eclipse 其实不是去找之前所设置的 JRE_HOME JAVA_HOME, 而是去找 which java 所指定路径下的 java。那两个JAVA变量只是为了方便其他地方引用而已,不要也不会对程序有任何影响。