0

我有02个问题:

1 - 我尝试在我的 Ubuntu 14.04 中运行 Eclipse neon,我收到了这个错误

在此处输入图像描述

我认为这个问题与 java 版本有关(Eclipse neon 需要 java 8)??

2 - 所以,我检查我的java版本,拿我得到的

java版本

在此处输入图像描述

霓虹灯 vi /etc/profile.d/java.sh

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

这是我的问题,我正在设置 java_home = java 8 但在 PATH 中它仍然是 java 7 !!!,你怎么看?我想要 java -version = java 8

谢谢

4

4 回答 4

1

似乎在您的 Path 变量中,对 Java 1.7 的引用是在 Java 1.8 之前给出的。当您运行 java -version 时,它会在 Path 变量中搜索 bin 目录,一旦获得引用,它就会返回版本。尝试从您的 Path 变量中删除 /opt/java/jdk1.7.0_21/bin ,我相信它会在此之后工作。希望这个答案对你有帮助

于 2016-09-07T11:00:58.097 回答
0

似乎 java.sh 会做你想做的事:设置 JAVA_HOME- 和 PATH-environment-variables。当你启动java时,你确定它已经启动了吗?您是否手动启动它并测试它是否有效?

于 2016-09-07T10:46:53.810 回答
0

当您运行脚本时,我猜 export cmd 只会更改该 shell 中的 PATH 并且您可能正在从另一个 shell 运行 eclipe。还要检查 eclipse.ini 文件以获取 eclipse 版本。

于 2016-09-07T11:12:34.117 回答
0

好吧,这里有很多事情要记住。

首先是......无论您使用什么 java_home,它仍然会首先查看您的路径!您的路径使用的是 java7!您应该从路径中删除硬编码的 java,而在路径中使用 JAVA_HOME/bin。也许您在修改环境变量时切换了用户?也不要忘记在导出 PATH 之前导出 JAVA_HOME!

其次...您可能有一个系统全局 java,但想用其他一些 jre 运行 eclipse。检查 eclipse.ini 中的 -vm 设置(通常在 /etc/eclipse.ini 中)

在你的 eclipse.ini 中添加这个顶部

-vm
/opt/java/jdk1.8.0_20/bin/java

来自 askubuntu(关于为什么 PATH 更新不起作用)

有几个地方可以定义$PATH

/etc/environment是一个影响所有用户的纯文本文件(不是脚本)~/.pam_environment——同样的东西,但用户特定的bash也执行一些可用于修改的脚本$PATH

~/.profile为登录 shell 会话执行(不要问我这是什么意思 :)

~/.bashrc为非登录交互式 shell 会话执行

/etc/profile并且是系统范围的/etc/bash.bashrc替代方案~/.profile~/.bashrc

我在某个地方读到了 /etc/environment一个推荐的地方来定义你的$PATH. 所以我通常使用它。但是您的路径可能在其他地方之一被修改。

顺便说一句,当您使用 执行命令时sudo,我认为它通常使用 root用户的 $PATH (而不是您的非特权用户帐户的 $PATH )。所以,~/.pam_environment~/.profile和 目录也可能起作用~/.bashrc/root

于 2016-09-07T11:14:56.033 回答