zabbix-java-gatewayが使用するOpenJDK1.6をOracleJDK1.7に変更できませんか?

現在Zabbix2.2.3とzabbix-java-gatewayを使用しています。
yumにてzabbix-java-gatewayインストールの際、依存関係でOpenJDK1.6が入るのですが
OracleJDK1.7を使用するように変更できないのでしょうか?

OracleJDK1.7
http://download.oracle.com/otn-pub/java/jdk/7u60-b19/jdk-7u60-linux-x64.rpm

よろしくお願いいたします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

OSを記載頂けていませんが、yum、linux、rpmというキーワードか
ら推測させて頂くと、RHELやCentOSを利用されているということで
よろしいでしょうか?
そうであるならば、より簡単に確実に環境を構築できるように、極
力標準のパッケージを利用して環境が構築できるようにされていた
と思います。

yumでjava-1.6.0-openjdkの方がインストールされてしまうのは、
Requires : java >= 1.6.0
の条件のせいで、java-1.7.0-openjdkよりも優先されてしまってい
るようです。
試していませんが、
Requires : java7 >= 1.7.0
となっていれば、java-1.7.0-openjdkがインストールされると思わ
れます。

これは、Red Hat側のパッケージとして、パッケージをインストー
ルした時に、どういったパッケージや機能がインストールされたか
を示す情報を登録するのですが、その内容が単純に1.6から1.7にな
ってしまわないように、異なるキーワードで登録するようになって
いるからのようです。
yum updateでもOpenJDKが1.6から1.7に勝手にバージョンアップさ
れないのも、それが関係しているようです。

強制的にパッケージの依存関係を無視してインストールすればイン
ストールできるかもしれませんが、ちゃんと動作するかはわかりま
せん。

ZabbixのSRPMを取得して、Oracle JDKを利用するようにspecファイ
ルを変更してビルドしなおすのが確実な対処方法だと思います。

ご参考:
 Bug 847837 - No "java-devel" capability in java-1.7.0-openjdk-devel
  https://bugzilla.redhat.com/show_bug.cgi?id=847837

ユーザー sin の写真

コメントありがとうございます。

環境を書いておらず失礼しました。
redhat5.9使用です。

すみませんビルドは避けたいため、yumで行いたいです。

いろいろ調べまして、一応解決しましたので、記載いたします。
psコマンドでjava-gatewayをみると、通常のjavaコマンドを使用していました。
java -server -classpath lib:lib/ ・・・

which java
/usr/bin/java

/usr/bin/java -> /etc/alternatives/java

alternatives --config java で調べると、通常使用するjavaがopenjdk1.6.0になっていましたので、
Selection Command
-----------------------------------------------
1 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
*+ 2 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

alternatives --install /usr/bin/java java /usr/java/default/bin/java 17060
として、通常使用するjavaを1.7.0に変更しました。(/usr/java/defaultはjdk1.7.0_60を指しています)

OpenJDK1.6は削除しました。

ユーザー TNK の写真

javaコマンドを利用していますが、そこで引数に指定しているjar
ファイルは、1.6でコンパイルしたものだと思われますので、何ら
かの問題が発生する可能性が0ではないことにご注意ください。

ユーザー sin の写真

>javaコマンドを利用していますが、そこで引数に指定しているjar
>ファイルは、1.6でコンパイルしたものだと思われます
その点気づいておりませんでした。

やはり、あらかじめOracleJDK1.7を入れておき
それでビルドして作成しなければいけないのですね。

少し考えてみます。教えていただきありがとうございました。