我制作了一个带有war文件的ear文件,但是ear文件包含jar文件,这些文件已经在war文件的lib文件夹中。如何删除重复的 jar 文件以及这些 jar 文件应该在哪里?在war文件的lib文件夹中还是在war文件之外?(我在我的项目中使用 maven ear 插件和 maven war 插件)。
问问题
2278 次
2 回答
3
我终于找到了一种方法,方法是在一个 ear 文件中生成瘦的战争文件。我的灵感来自这里的 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
于 2010-11-30T06:06:26.713 回答
0
如果您有 EJB 存档和 WEB 存档都使用的 jar,那么您可以执行以下操作:
- 将所有常见的罐子放在 .ear 的根目录下
- 使用
Class-Path
ejb 和 web 档案中 manifest.mf 的属性来引用这些 jar 文件。请记住,jar 的位置将相对于 ear 文件的根目录。
即使您没有 EJB jar,上述步骤也可以使用。
于 2010-11-26T05:27:07.667 回答