在Eclipse中的Web Fragment项目中部署库

时间:2013-07-05 13:49:50

标签: eclipse jar war eclipse-wtp

使用Eclipse 4.2我正在尝试部署一个包含主动态Web项目和Web Fragment项目的Web应用程序。

Web Fragment需要一些主程序在编译时不需要的jar库(lib1.jar和lib2.jar)。要添加这些库,我有两个选择:

  1. 将它们放入Java构建路径中,每个路径都有一个条目
  2. 将它们放在src文件夹下的WEB-INF / lib文件夹中,并将“Web App Libraries”库添加到Java Build Path
  3. 在这两种情况下,我都将库标记为在Java Build Path的“Order and Export”选项卡中导出

    当我发布使用Tomcat 7.0.041的相应服务器或导出war I时,结束以下场景:

    1. 在案例1中没有库(lib1.jar也不是lib2.jar)被复制到主WEB-INF / lib文件夹
    2. 在案例2中,两个库都复制到Web片段生成的jar文件的WEB-INF / lib文件夹中,然后将其复制到主WEB-INF / lib文件夹中。
    3. 启动服务器时,对于驻留在lib1.jar或lib2.jar中的类,两种情况都会引发ClassNotFoundException。

      有没有办法部署Web Fragment项目所需的库而不将它们手动放在主项目中?

1 个答案:

答案 0 :(得分:2)

我刚刚找到了我的问题的两步答案。

在上面的场景#1之后,你必须进入Web Fragment项目属性,然后转到Deployment Assembly,按“Add”按钮,选择Java Build Path Entries并选择你想要包含的所有库在服务器的WEB-INF / lib目录中。

完成此操作后,选择的库将在发布服务器或导出战争时复制到WEB-INF / lib。