2017-05-28 24 views
0

私はWASに2つのWebアプリケーションを持っています。Websphere Application Server Extensionクラスローダーjarコンフリクト

  1. IはB.
  2. のソースコードをBを実行するために使用するの.jarを持っていない、拡張クラスローダージャーからロードされるのと同じ経路です。

このように、このJARはプロジェクトAで参照されているため、Bが使用するJARと競合するため、アプリケーションが実行されません。

手動でパスを設定してそのファイルをロードするソースコードがないため、そこから.jarを移動できません。

Websphereに特定のアプリケーションで特定の.jarを使用しないように指示する方法はありますか?

ありがとうございます。

+0

本当に 'B'はパスによるjarへの明示的な参照を持っていますか、暗黙的にそこからクラスを読み込んでいるだけですか?あなたは隔離された共有ライブラリに移動し、 'B'のWAS設定からそれを参照しようとしましたか? – covener

+0

はい、そのパスへの明示的な参照があります:/、隔離されたライブラリのアイデアは何ですか?今すぐ読んでください –

+0

隔離された共有ライブラリに移動するのは、そのディレクトリにショートカットとしてコピーされ、通常のクラスローディングで使用されていた場合のみです。 – covener

答えて

0

あなたの情報をお寄せいただきありがとうございます。私は最後に、私がすべてのアプリケーション(A)を起動してから、アプリケーション(A)が自分のjarファイルを取得したことを確認してください。実行時にwasクラスのローダーを修正して、負のjarファイルを再利用し、問題のあるフォルダに戻してから、(B)を起動しました。

これはパッチとして動作し、私はそれを行うことをお勧めしません。それは彼らが今働いている。しかし、WebSphereが再びリストアするときには失敗しますが、現在はソースコードを取得してjarの依存関係を修正し、WASにBを再インストールします。< - 必要なときに透明なアプリケーションサーバーを再起動するための正しい手順。

関連する問題