web-dev-qa-db-ja.com

「Java -version」は異なる出力を示しています。インストールされたフォルダーを見つけて、Java_HOMEとJDK_HOMEを構成する方法

Oracle WebサイトからJDK + Netbeansバンドルをダウンロードしてインストールしましたが、端末でJava -versionと入力すると、次の出力が表示されます。

$ Java -version
The program 'Java' can be found in the following packages:
 * default-jre
 * gcj-4.8-jre-headless
 * openjdk-7-jre-headless
 * gcj-4.6-jre-headless
 * openjdk-6-jre-headless
Try: Sudo apt-get install <selected package>  

まず、これはどういう意味ですか?システムにJavaの複数のバージョンがインストールされていますか?
第二に Netbeans + JDKをインストールした後に作成されたJDKフォルダーがあります。これらは、フォルダーの内容です。

$ pwd
/usr/local/jdk1.8.0_65
$ ls
bin        javafx-src.Zip  man          THIRDPARTYLICENSEREADME-JAVAFX.txt
COPYRIGHT  jre             README.html  THIRDPARTYLICENSEREADME.txt
db         lib             release
include    LICENSE         src.Zip

第三に Android St​​udioは、bashrcJDK_HOMEを指定したにもかかわらず、export JDK_HOME=/usr/local/jdk1.8.0_65を見つけることができません。何ができましたか?

jdk1.8.0_65フォルダーを削除してSudo apt-get install default-jreおよびSudo apt-get install default-jdkを使用することを検討していますが、jdkフォルダーを削除すると何かが混乱したり、apt-getコマンドがダウンロードされるかどうかJavaの最新バージョン。

更新:
binフォルダーをPATHに追加しようとしましたが、Javaバージョンは適切に表示されていますが、Androidスタジオは追加できませんJDKを見つけます。

$ echo $PATH
/usr/local/jdk1.8.0_65/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
$ Java -version
Java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)
$ Android
[Sudo] password for nav: 
ERROR: Cannot start Android Studio
No JDK found. Please validate either STUDIO_JDK, JDK_HOME or Java_HOME environment variable points to valid JDK installation.
$ echo $Java_HOME
/usr/local/jdk1.8.0_65/bin
$ echo $JDK_HOME
/usr/local/jdk1.8.0_65
$  
1
Nav

不足しているのは、jdk1.8.0_65/binフォルダーをPATH環境変数に追加することです。

まず、これはどういう意味ですか?システムにJavaの複数のバージョンがインストールされていますか?

いいえ。ただし、/usr/local/jdk1.8.0_65にインストールしたものは、Javaに依存するnetbeansAndroidなどの他のプログラムによって検出されません。自分で確認するには、端末を開き、Java実行可能ファイルを含むフォルダーを次のようにパス変数に追加します。

export PATH="/usr/local/jdk1.8.0_65/bin:$PATH"

これが成功したかどうかをテストするには、任意のディレクトリに移動して、次のコマンドを実行します。

Java -version

それが成功したら、netbeansフォルダーに移動して実行します。

./netbeans

他のすべての設定が適切であれば、実行されるはずです。Androidも同様です。変更を永続的にするには、パス修飾子を~/.profileファイルに追加します(そうしないと、ターミナルを開いてJavaを操作するたびにexportコマンドを発行する必要があります)。

1
Prahlad Yeri

まず、これはどういう意味ですか?システムにJavaの複数のバージョンがインストールされていますか?

いいえ、これらはJavaを取得するためにインストールするパッケージオプションです。現在、パッケージシステムの外部にインストールすることを選択しています。

可能であれば、Javaのパッケージでサポートされているバージョンを使用するのが最も簡単です。この方法では、別のJDKをインストールしてすべてのポインターを新しいバージョンに変更する必要がなく、パッケージを単純に更新できます。

第三に、bashrcでJDK_HOME =/usr/local/jdk1.8.0_65のエクスポートを指定したにもかかわらず、Android St​​udioはJDK_HOMEを見つけることができません。何ができましたか?

現時点では、Java St​​udioで開発するにはAndroid 7が必要です。 http://developer.Android.com/sdk/installing/index.html?pkg=studiohttps://stackoverflow.com/questions/23318109/is-it-possible- to-use-Java-8-for-Android-development

0
mattm