ear文件中有多个相同的jar文件

时间:2010-11-26 03:22:54

标签: java java-ee maven maven-ear-plugin

我已经生成了一个带有war文件的ear文件,但是ear文件包含jar文件,这些文件已经存在于war文件的lib文件夹中。如何删除重复的jar文件以及这些jar文件应该在哪里?在war文件的lib文件夹中或war文件外? (我在我的项目中使用maven ear plugin和maven war插件)。

2 个答案:

答案 0 :(得分:3)

我终于通过在ear文件中生成瘦的war文件找到了一种方法。我受到了来自这里的maven-war-plugin示例的启发 skinny-wars

按照示例的说明,我将所有jar文件移出war模块并将其放入ear文件中的lib文件夹中。

所以最终的ear文件结构将是:

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

答案 1 :(得分:0)

如果您拥有EJB存档和WEB存档使用的jar,那么您可以执行以下操作:

  1. 将所有常见的罐子放在根部 of .ear
  2. 使用ejb和web存档中manifest.mf的Class-Path属性来引用这些jar文件。请记住,罐子的位置将相对于耳朵文件的根目录。
  3. 即使您没有EJB jar,上述步骤也可以。