1

以前sudo apt-get open-jdk7は、Ubuntu OS に Java をインストールしていました。

ターミナルを開いて入力echo $JRE_HOMEすると、何も表示されません。しかし、その後java -version、OpenJDKの正しいバージョンが表示されます。また、単に入力javaすると機能します。

Ubuntu が Java のパスをどのように設定したかわかりません。

同様にjavac機能しますが、私が言うと何も見えませんecho $JAVA_HOME

私のパスにはJavaディレクトリパスが表示されません。

UbuntuはJavaパスをどこに設定していますか? OpenJDKのインストール中にUbuntuが設定JAVA_HOMEされないのはなぜですか?JRE_HOME

4

3 に答える 3

5

JAVA_HOMEJava が機能するために何らかの形で、JRE_HOMEまたは同様の環境変数を設定する必要があるというのはよくある誤解です。

実際、javaand javac(および関連する) 実行可能ファイルは、これらの変数をあまり気にしません。それらは にあるだけでPATH(または にない場合はフルパスを介して実行できますPATH)、「それ自体の近く」を検索して関連するインストールを見つけます (つまり、実行可能ファイルは通常、JVM ファイルに関連する既知の場所にインストールされます)。

Java のインストールを使用および/または検索するサード パーティのスクリプトがいくつかあります (Apache Tomcat はこれのよく知られた例です) が、Java 実行可能ファイル自体はそれらの変数を必要としません。JAVA_HOMEJRE_HOME

Ubuntu が実行可能ファイルを見つける方法については、簡単に答えられます。これらのコマンドを入力したときに実行される実行可能ファイルを見つけるにはwhich java、 とを使用します。which javacDebian ベースのシステムでは、それらは通常、実際の実行可能ファイルを指す代替システムを介した一連のシンボリック リンクです。

于 2012-10-03T06:13:44.330 に答える
1

「ubuntuはJavaパスをどこに設定しますか?」、ubuntuはopen-jdk-java-pathを自動的に設定しません。試す

find / -name "java"

javacを検索します。そして書く

export JRE_HOME="xxx"

(ここで、xxxはopen-jdk-jreのベースです。)

ところで:あなたはopen-jdkで問題を抱えているだけです。sun-jdkを使用する方がよいでしょう。

于 2012-10-03T06:12:01.710 に答える
1

多くの Linux ディストリビューションと同様に、Ubuntu のパスには /etc/alternatives があります。次のように入力します。

which java

それからあなたは得るでしょう

/etc/alternatives/java

次のように入力します。

ls -l /etc/alternatives/java

それからあなたは得るでしょう

/etc/alternatives/java -> /usr/lib/jvm/<your java version>

いくつかの mor ls -l -s を使用すると、全体像を把握するのに役立ちます。

于 2012-10-03T06:13:35.010 に答える