8

jaxws を 2.2 にアップグレードしたい (jdk1.6 は jaxws 2.1 にバンドルされています)。私のjdkは(パブリックjreをインストールしませんでした):

java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode)

jaxws自身のドキュメントで、彼らはそれを行う方法を説明しています:

これを修正する 1 つの方法は、jaxws-api.jar と jaxb-api.jar を JRE 承認済みディレクトリにコピーすることです。$JAVA_HOME/lib/endorsed (or $JDK_HOME/jre/lib/endorsed)

しかし、これが私のインストールに影響を与えているかどうかはわかりません。まず、定義したのは%JAVA_HOME%. フォルダー$JAVA_HOME/lib/endorsedが存在しないため、2 つの jar を作成してコピーしました。しかし、もしそうなら(wsgenはjaxwsのツールです)

wsgen -version

私はまだ得る:

JAX-WS RI 2.1.6 in JDK 6

フォルダーの作成も試みましJAVA_HOME\jre\lib\endorsedた (ドキュメントでは JDK_HOME と記載されていますが、JAVA_HOME しかないため、このパスを使用したことに注意してください)。まだ同じwsgen出力。

私の質問は次のとおりです。

  1. ドキュメントページの JAVA_HOME と JDK_HOME の違いは何ですか? JAVA_HOME を参照するための重要な方法または 2 つの方法はありますか?
  2. 「wsgen -version」は、使用されている jaxws のバージョンを確認する有効な方法ですか、それとも、これは常に元の jdk で exe を呼び出しますが、承認された jar が使用されるという意味ではありませんか?
  3. jdk.16にjaxws2.2をインストールするための非常に詳細な手順を知っている人はいますか?

私が見ているものについてのヒントがいくつかあるこの投稿を見つけました

4

3 に答える 3

11

java.endorsed.dirsたとえば、を呼び出して、システムプロパティを確認する必要がありますSystem.getProperty("java.endorsed.dirs")。Windowsマシンでは、これは通常、のようなものC:\Program Files\Java\jdk1.6.0_16\jre\lib\endorsedです。推奨するjarファイルをここに配置します。そのディレクトリが存在しない場合は、作成するだけです。

もう1つのオプションは、jarを自分の好みのディレクトリに配置することですが、コマンドラインスイッチを追加してシステムプロパティをオーバーライドします-Djava.endorsed.dirs=<Your endorsed jars directory>

于 2012-07-14T09:39:52.170 に答える
1

jre に含まれる wsimport と wsgen は、jre/bin ディレクトリに exe として配置されており、コマンド ラインから呼び出すと、Jax-WS 2.1 実装が実行されます。

Jax-WS 2.2 に更新するには、関連する JAX-WS 2.2.X RI を jaxws Web サイトからダウンロードする必要があります。

コンテンツをコンピューターに抽出する必要があります。

また、jaxws-api.jar と jaxb-api.jar を承認されたディレクトリにコピーする必要があります (元の説明に従って)。

ただし、(プロジェクトに応じて) wsgen.exe または wsimport.exe を使用する代わりに、jax-ws 2.2 update/download で提供されているものを使用する必要があります。

ダウンロードした JAX-WS 2.2 から抽出した jaxws-ri ディレクトリに、bin ディレクトリと 4 つのファイル (wsgen.bat、wsgen.sh、wsimport.bat、wsimport.sh) が表示されます。代わりに実行する必要があります。

それらを実行するには、JAXWS_HOME 環境変数を設定する必要があります (詳細については、wsgen/wsimport.bat/sh ファイルを参照してください)。

これで、JDK 1.6 で JAX-WS 2.2 を実行できるようになります。

于 2016-12-01T11:11:57.903 に答える
1

環境変数に関連付けられていません。%JAVA_HOME% は、Java をインストールした場所やインストールした Java のバージョンがわからないドキュメントの省略形です。

%JAVA_HOME% は JRE (非開発者が持つ通常のランタイム) を参照します。%JDK_HOME% は、開発者が使用する Java 開発キットである JDK の rood ディレクトリを指します。

それ以上に、実行元の wsgen をいつ実行するか、および対応する JVM が jar を含む承認されたディレクトリで構成されていることを知る必要があります。

于 2010-05-18T17:52:47.690 に答える