特定のプログラムに特定のバージョンのJRE / JDKを使用する

ArchLinuxとPyCharmというIDEを使用しています。 ダウンロードページでは、OpenJDKの代わりにJava6を使用することをお勧めします。 ArchLinuxにはOpenJDKパッケージ(jdk7-openjdk)があり、これをインストールしてインストールし、 Arch Wiki onJavaで読んだものからjdk6-compatおよびjre6-compatというパッケージを介してOpenJDK7と一緒にOracleJava6をインストールできるはずです。これらのバージョンのJavaは、通常の場所ではなく/opt/にあります。

ただし、jdk6-compat

、次のコマンドを実行すると、OpenJDK7を実行していることがわかります。

% java -version java version "1.7.0_09" OpenJDK Runtime Environment (IcedTea7 2.3.3) (ArchLinux build 7.u9_2.3.3-1-x86_64) OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode) 

JAVA_HOMEを設定し、iv id = “26fa4e329f”のPATH/opt/java6/binを追加しました”>

ファイル。

PyCharm(または他のアプリケーション)でOpenJDKの代わりにOracle Java 6を使用するにはどうすればよいですか?

投稿していただきありがとうございます。間違った場所にあります。

役立つ可能性のあるその他の情報:

  • Gnome3をDEとして使用する

回答

別のバージョンを使用する場合Javaの場合2つのことを行います。

  • まず、Javaのインストールに応じてJAVA_HOMEを設定し、エクスポートします。
  • 次に、パスを `PATH = $ {JAVA_HOME} / bin:$ {PATH}で更新します。

PATHの方法による検索したところ、パスの末尾に追加すると、新しいバージョンは使用されません。パスの最後に追加されたものは、新しいコマンドを追加するだけで、既存のコマンドを置き換えるものではありません。 PATH変数の前に付けると、他のコマンドよりも新しいディレクトリのコマンドが使用されます。

javaなどのコマンド多くの場合、プログラムに到達する前に、いくつかのシンボリックリンクが含まれます。 ${JAVA_HOME}/binを使用すると、間接化がバイパスされ、さまざまなJava関連コマンドへの直接パスが提供されます。

編集:異なるバージョンの特定のプログラムのみを実行する場合Javaの場合、次のようなラッパーを使用できます。

#!/bin/bash # javawrapper - replace Java for a command. export JAVA_HOME=$1; shift PATH=${JAVA_HOME}/bin:$PATH $* 

次に、次のようなコマンドでラッパーを呼び出すことができます。

javawrapper /opt/java6 PyCharm 

次のように~/.bashrcファイルにエイリアスを追加することもできます

alias PyCharm="javawrapper /opt/java6 PyCharm" 

コメント

  • まあ、それで問題の半分は解決します。 $PATHの先頭ではなく、末尾に追加していました。しかし、特定のアプリケーションに対して異なるバージョンのJavaのみを実行するにはどうすればよいですか?
  • '応答を更新しました。ただし、あなたのような場合、デフォルトのJavaバージョンを使用してプログラムを保持する必要はめったにありません。

回答

ArchLinuxはさまざまなJDKを/ usr / lib / jvmディレクトリに保持します。デフォルトのJDKを変更するには、そこでシンボリックリンクを変更します。

# ls -al /usr/lib/jvm lrwxrwxrwx 1 root root 14 May 31 19:58 default -> java-8-openjdk lrwxrwxrwx 1 root root 18 May 31 19:58 default-runtime -> java-8-openjdk/jre drwxr-xr-x 7 root root 4096 May 27 21:45 java-10-openjdk drwxr-xr-x 6 root root 4096 May 31 14:35 java-8-openjdk drwxr-xr-x 7 root root 4096 May 31 19:56 java-9-openjdk 

Archにはそのための特別なスクリプトがあります:

# archlinux-java set java-10-openjdk 

そして次のようになります:

# java -version openjdk version "10.0.1" 2018-04-17 OpenJDK Runtime Environment (build 10.0.1+10) OpenJDK 64-Bit Server VM (build 10.0.1+10, mixed mode) 

「修正」および「ステータス」オプションを使用することもできます。

# archlinux-java fix # archlinux-java status Available Java environments: java-10-openjdk (default) java-8-openjdk java-9-openjdk 

コメント

  • I 'なぜ'が受け入れられないのかわからないのですか?
  • blog.debenny.de/2018/07/21/install-jdk-on-arch-linux-manually

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です