2010-11-26 31 views
4

warファイルが入ったearファイルが作成されましたが、earファイルにはすでにwarファイルのlibフォルダにあるjarファイルが含まれています。複製されたjarファイルを削除するにはどうしたらいいですか? warファイルのlibフォルダまたはwarファイルの外側にありますか? (私はプロジェクトでmaven earプラグインとmaven warプラグインを使用しています)。複数の同一のjarファイルがearファイルにあります

+0

あなたはEEのバージョンを使用していますか? 5または6? – javamonkey79

+0

私はJava 1.6を使用しているので、J2EE 6でしょうか?しかし、両者の違いは何ですか? – newguy

+0

jdk1.6はjEEを意味しません6 –

答えて

3

私は最終的に耳のファイルの中にスキニーのwarファイルを作成することによってこれを行う方法を考え出しました。私はここからのmaven-war-pluginの例に触発されました skinny-wars

例の手順に従って、すべてのjarファイルをwarモジュールから移動し、earファイル内のlibフォルダに入れました。

ので、最終的な耳のファイル構造は次のようになります。

ear-app 
    -- lib (all the jar files will be here) 
    -- webModule1 
     -- lib (empty) 
    -- webModule2 
     -- lib (empty) 
    -- ejbModule 
0

あなたは両方で使用されているjarファイル、EJBアーカイブおよびWebアーカイブを持っている場合は、次の操作を行うことができます

  1. が.earの
  2. のルート ですべて共通のjarファイルを保ちます
  3. これらのjarファイルを参照するには、ejbおよびwebアーカイブ内のmanifest.mfのClass-Path属性を使用します。ジャーの位置は、イヤーファイルのルートに関連していることに注意してください。

もし、あなたがEJB jarを持っていなくても、上記の手順が有効です。

+0

私はClass-Pathを使用していますが、warファイルには常にjarファイルを含むlibフォルダがあります。どうすれば削除できますか? – newguy

関連する問題