B Oracle Fusion Middleware製品のインストールおよび構成後のJDKの更新

使用するマシンにJDKバージョンjdk1.8.0_121がインストールされているとします。Oracle Fusion Middleware製品をインストールおよび構成する場合、構成ウィザード(config.sh|exe)や、OPatch、RCUなどのユーティリティはデフォルトでJDK (たとえば、jdk1.8.0_121)を指し示しています。後に、セキュリティの強化およびバグの修正が含まれる新しいバージョン、仮にjdk1.8.0_131とするJDKがOracleからリリースされることになります。12c (12.2.1.3.0)以降では、既存のJDKを新しいバージョンにアップグレード可能であり、すべての製品スタックが新しいバージョンのJDKを指し示すようにできます。

複数のバージョンのJDKを保持し、必要に応じてバージョンを切り替えることができます。

Oracle Fusion Middleware製品のインストール後におけるJDKの場所の更新について

Oracleホームおよびドメイン・ホームにあるRCUや構成ウィザードなどのバイナリとその他のメタデータおよびユーティリティ・スクリプトでは、ソフトウェアのインストール時に使用されたJDKバージョンが使用され、同じバージョンのJDKが継続して参照されます。JDKパスは、JAVA_HOMEと呼ばれる変数に格納され、ORACLE_HOME/ouiディレクトリの.globalEnv.propertiesファイルの中央に置かれています。

config.sh|cmd、launch.shまたはopatchなどのユーティリティ・スクリプトは、ORACLE_HOMEにあり、それらは起動されると、.globalEnv.propertiesファイル内のJAVA_HOME変数を参照します。これらのスクリプトおよびユーティリティを新しいバージョンのJDKに指定するには、「既存のOracleホームのJDKの場所の更新」に記載された手順に従い、.globalEnv.propertiesファイル内のJAVA_HOME変数を更新する必要があります。

ドメイン・ホーム・ディレクトリ内のスクリプトおよびファイルを新しいバージョンのJDKに指定するには、次のいずれかの方法に従います。
  • 構成ウィザードの実行中に、新しいJDKへのパスを「ドメイン・モードおよびJDK」画面で指定します。

    たとえば、Oracle Fusion Middleware InfrastructureをJDKバージョン8u121でインストールしたとします。WebLogicドメインを構成アシスタントで構成する際に、構成ウィザードの「ドメイン・モードおよびJDK」画面で新しいJDKへのパスを選択できます。たとえば、/scratch/jdk/jdk1.8.0_131です。

  • grepコマンド(UNIX)またはfindstrコマンド(Windows)を使用し、手動でJDKを参照するファイルを特定して、各参照を更新します。「既存のドメイン・ホームのJDKの場所の更新」を参照してください。

ノート:

新しいバージョンのJDKをファイルをオーバーライドして既存のJDKとして同じ場所にインストールする場合、なにもする必要ありません。

既存のOracleホームにおけるJDKの場所の更新

getProperty.sh|cmdスクリプトを使用して、.globalEnv.propertiesファイルからJAVA_HOMEなどの変数の値が表示されます。setProperty.sh|cmdスクリプトは、.globalEnv.propertiesファイルの新旧のJDKの場所を含むOLD_JAVA_HOMEまたはJAVA_HOMEなどの変数の値を設定するために使用されます。

getProperty.sh|cmdおよびsetProperty.sh|cmdスクリプトは次の場所にあります。

(UNIX) ORACLE_HOME/oui/bin
(Windows) ORACLE_HOME\oui\bin
ここで、ORACLE_HOMEは、jdk1.8.0_121などのJDKの現行バージョンを使用した製品を含むディレクトリです。

.globalEnv.propertiesファイル内のJDKの場所を更新するには、次のようにします。
  1. getProperty.sh|cmdスクリプトを使用して、現在のJDKのパスをJAVA_HOME変数から表示します。たとえば:

    (UNIX) ORACLE_HOME/oui/bin/getProperty.sh JAVA_HOME
    (Windows)  ORACLE_HOME\oui\bin\getProperty.cmd JAVA_HOME
    echo JAVA_HOME
    ここで、JAVA_HOMEは、JDKの場所を含む.globalEnv.プロパティ・ファイル内の変数です。

  2. 現在のJDKからOLD_JAVA_HOMEなどの別の変数へのパスを.globalEnv.propertiesファイルにバックアップするには、次のコマンドを入力します。

    (UNIX) ORACLE_HOME/oui/bin/setProperty.sh -name OLD_JAVA_HOME -valuespecify_the_path_of_current_JDK
    (Windows) ORACLE_HOME\oui\bin\setProperty.cmd -name OLD_JAVA_HOME -value specify_the_path_of_current_JDK

    このコマンドにより、OLD_JAVA_HOMEと呼ばれる新しい変数が.globalEnv.propertiesファイルに、指定した値で作成されます。
  3. .globalEnv.propertiesファイルのJAVA_HOME変数にJDKの新しい場所を設定するには、次のコマンドを入力します。

    (UNIX) ORACLE_HOME/oui/bin/setProperty.sh -name JAVA_HOME -value specify_the_location_of_new_JDK
    (Windows) ORACLE_HOME\oui\bin\setProperty.cmd -name JAVA_HOME -value specify_the_location_of_new_JDK

    このコマンドを実行すると、.globalEnv.propertiesファイルのJAVA_HOME変数にjdk1.8.0_131のような新しいJDKのパスが含まれます。

既存のドメイン・ホームにおけるJDKの場所の更新

現在のJDK (たとえばjdk1.8.0_121)への参照を手動で検索し、これらのインスタンスを新しいJDKのロケーションに置き換える必要があります。

grepコマンド(UNIX)またはfindstrコマンド(Windows)を使用し、jdkに関係する参照を検索します。

次の3ファイルのJDKの場所の更新が必要になる場合があります。

(UNIX) DOMAIN_HOME/bin/setNMJavaHome.sh
(Windows) DOMAIN_HOME\bin\setNMJavaHome.cmd

(UNIX) DOMAIN_HOME/nodemanager/nodemanager.properties
(Windows) DOMAIN_HOME\nodemanager\nodemanager.properties

(UNIX) DOMAIN_HOME/bin/setDomainEnv.sh
(Windows) DOMAIN_HOME\bin\setDomainEnv.cmd