Eclipse 不使用 PATH

fai*_*zal 5 eclipse java 14.04

我面临 Eclipse 没有从 PATH 环境变量中提取 VM 的问题。我按照以下步骤重现错误:

  1. http://www.oracle.com/technetwork/java/javase/downloads/index.html?ssSourceSiteId=otnjp下载了相应版本的 Oracle JDK

  2. 提取它:

    tar zxvf ~/Downloads/jdk-8u5-linux-x64.tar.gz ~/DEV
    
    Run Code Online (Sandbox Code Playgroud)
  3. 添加到PATH

    gedit ~/.bashrc
    export JAVA_HOME=/home/faizal/DEV/jdk1.8.0_05
    export PATH=${PATH}:${JAVA_HOME}/bin
    
    Run Code Online (Sandbox Code Playgroud)
  4. java通过重新启动系统并java在 bash 中的随机文件夹中执行,确认在 PATH 中可用:

    cd ~
    java
    
    Run Code Online (Sandbox Code Playgroud)

但是当我运行 Eclipse 时,出现错误:

A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations: /home/faizal/DEV/eclipse-luna/eclipse/jre/bin/java java in your current PATH
Run Code Online (Sandbox Code Playgroud)

我可以把它只能通过创建一个符号链接的工作java/bin,以点$JAVA_HOME/bin/java。为什么 Eclipse 没有这个符号链接就不能工作?

Let*_*ety 3

根据这个链接

通常建议使用 ~/.bashrc、~/.bash_profile 和 ~/.bash_login 等 Shell 配置文件来设置环境变量。虽然这可能适用于从 shell 启动的程序的 Bash shell,但默认情况下,这些文件中设置的变量对于从桌面会话中的图形环境启动的程序不可用。

如果您从桌面会话运行 eclipse,则应该修改~/.profile

在此文件中,您还可以放置环境变量分配,因为它会在启动过程桌面会话期间由 DisplayManager 自动执行,并且在从文本控制台登录时由登录 shell 自动执行。