Eclipse中的Deployment Assembly和J2EE Module依赖关系之间的区别

发布于 2021-01-30 17:20:34

当将Eclipse 3.7 Indigo用于Java EE开发人员时,有一种称为 Deployment Assembly
。我可以在google上找到并了解它与 J2EE Module依赖关系 类似,在
其中我们可以选择jar,然后将其放到EAR文件夹中或WAR中的WEB-INF / lib中。现在我的疑问是,

我有一个JavaProject Dependencies 。我已经通过 classpath 变量添加了所有依赖的Jars 。现在,
Dependencies Project作为依赖添加到我的Web Project TestWebProject中
。Web项目的编译是正确的,但是在运行时出现错误,因为未找到某个jar。我可以在独立项目“ Deployment Assembly of
Dependencies ”中修复我的include jar 。

问题是,为什么我必须在部署程序集中修复jar,首先,它是一个独立项目,其次是如果我没有此部署程序集,该如何解决?

关注者
0
被浏览
95
1 个回答
  • 面试哥
    面试哥 2021-01-30
    为面试而生,有面试问题,就找面试哥。

    我可以在Google上找到并了解它类似于J2EE模块的依赖项

    直到Eclipse 3.5为止,它都被称为“ J2EE模块依赖关系”。在该版本之后,它被重命名为“ Deployment
    Assembly”。但是对于Java EE Web项目实际上是相同的。


    问题是,自从它是一个独立的项目以来,为什么我必须在部署程序集中修复jar

    因为这样,Eclipse将自动构建项目的JAR文件并放入/WEB- INF/libWeb项目的部署中。如果您不这样做,那么JAR在webapp的运行时将不可用,而仅在编译时可用,并且Eclipse希望您已经在运行时类路径中将其构建并放置在其他任何位置,例如服务器自身/lib


    如果我没有此部署程序集,该如何解决?

    手动构建/导出JAR并放入webapp自己的/WEB-INF/lib或服务器自己的/lib。但是,“部署程序集”配置更容易,也是推荐的方式。



推荐阅读
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看