2016-11-07 3 views
0

すでにたくさんあるので、私は本当にこの質問を避けようとしました。しかし、私は正しいJAVA_HOMEに私の端末を設定するために修正することはできません。JAVA_HOME Ubuntu Terminal

ここでまず、次の出力:

のJava-ホーム

echo $JAVA_HOME 
/usr/lib/jvm/java-7-oracle 

のJava-バージョン:

java -version 
java version "1.8.0_91" 
Java(TM) SE Runtime Environment (build 1.8.0_91-b14) 
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode) 

Mavenのバージョン:

mvn -version 
Error: JAVA_HOME is not defined correctly. 
We cannot execute /usr/lib/jvm/java-7-oracle/bin/java 

インストールされ、Javaベースバージョン:

/usr/lib/jvm$ ls -l 
total 8 
lrwxrwxrwx 1 root root 24 Mär 22 2014 default-java -> java-1.7.0-openjdk-amd64 
lrwxrwxrwx 1 root root 20 Nov 19 2015 java-1.7.0-openjdk-amd64 -> java-7-openjdk-amd64 
drwxr-xr-x 5 root root 4096 Jan 26 2016 java-7-openjdk-amd64 
drwxr-xr-x 8 root root 4096 Mai 7 2016 java-8-oracle 

デフォルトのjavaバージョンが1.7に設定されていることがわかります。しかし、java --versionで表示されるバージョンは1.8で、maven(他のアプリケーションと同様)は正しいものを見つけることができません。自己構築.bashrcの中にシステム全体の

  • セットのprofile.dでJAVA_HOME(JVMおよびJDK)
  • 設定JAVA_HOME用など/環境における

    • 設定JAVA_HOME:

      は、私は次のことを試してみました/ etcにあるdot.bashrcファイル内 USR-ホーム・ディレクトリにある自己構築.bashrcファイル内の/ etc/
    • 設定JAVA_HOME
    • 設定JAVA_HOME内のファイル/
    • 変更設定の選択肢を持つデフォルトのJavaバージョン:

      sudoのアップデート-代替--config javaの は、代替のjavaディレクトリ(/ usr/binに/ javaの提供)のための2つの選択肢があります。

      export JAVA_HOME=JAVA_HOME=/usr/lib/jvm/java-8-oracle 
      echo $JAVA_HOME 
      JAVA_HOME=/usr/lib/jvm/java-8-oracle 
      
      java -version 
      java version "1.8.0_91" 
      Java(TM) SE Runtime Environment (build 1.8.0_91-b14) 
      Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode) 
      
      mvn -version 
      Error: JAVA_HOME is not defined correctly. 
          We cannot execute JAVA_HOME=/usr/lib/jvm/java-8-oracle/bin/java 
      

      誰かが私をもたらすことができる場合、それは素晴らしいだろう:私はそれは、端末のセッションのための変数を変更しますが、それでも動作しない端末に手動でJAVA_HOMEを設定すると

      Selection Path           Priority Status 
      ------------------------------------------------------------ 
      * 0   /usr/lib/jvm/java-8-oracle/jre/bin/java   1075  auto mode 
          1   /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071  manual mode 
          2   /usr/lib/jvm/java-8-oracle/jre/bin/java   1075  manual mode 
      

    それのすべてにいくつかの光。 私はシステム全体の変数が/ etc /環境に設定されていると理解しています。通常、bashの場合はprofile.dをロードするか、端末を初期化するたびにロードされるようにbashrcに設定します。

    種類が

  • +0

    私は実際にそれを見つけました!私のホームディレクトリの.profileと.bashrcでした。しかし、これを編集するときは非常に注意してください。Lightdmがディレクトリの所有者全体を変更したため、Lightdmはこれ以上動作しなくなりました。 – kaikun

    答えて

    0

    についてはあなたにも必要なのjavaを修正するためにPATH変数を設定しましたか?あなたのPATHとJAVA_HOMEが別のJDKを指しているようです。これは、java -versionとecho $ JAVA_HOMEの異なる出力の理由でなければなりません。

    また、JREをJAVA_HOMEに使用していますか?私はそれがJDKでなければならないと思う。

    +0

    私はPATH = $ PATHに/ etc/profileと/ etc/environmentのようなパスを設定しようとしました:$ HOME/bin:$ JAVA_HOME/bin.IすべてがJava-8-oracle(JDK)を指し示そうとしました – kaikun

    +0

    後であなたのパスを上書きする必要があります。 zshを使用している場合は、.bashrcまたは.zshrcを試しましたか? – deepakborania

    +0

    ホームディレクトリの.profileにありがとうございました。 – kaikun