Eclipse中多模块maven Web项目的依赖性问题

时间:2011-03-17 17:29:33

标签: java eclipse tomcat maven

我正在Eclipse中创建一个具有平面层次结构的多模块项目:

| myproject-parent | - pom.xml | myproject | - pom.xml | myproject-dep | - pom.xml

如果父pom引用了两个模块,myproject在其依赖项中有myproject-dep,并且都注明了父项。项目和子项目依赖项在Tomcat的web/WEB-INF/lib文件夹中完成。

myproject是一个(动态)Web项目,其编译类转到myproject/web/WEB-INF/classes,而依赖项目的类转到myproject-dep/target/classesmyproject在Tomcat上运行,myproject-dep是构建路径上的必需项目。

在这种情况下,我希望所有的依赖都是有序的,但Catalina类加载器找不到myproject-dep的类。如果我在运行配置中显式地将这些添加到tomcat类路径中,那么它将失败,因为它没有从myproject-dep中找到明显存在于webapps的lib文件夹中的jar。

我错过了什么? 谢谢!

1 个答案:

答案 0 :(得分:0)

你说你正在和maven一起建造,但听起来并不像是用maven包装你的战争。

如果您使用的是maven-war-plugin,那么当它经历打包阶段时,它已经将您声明的依赖关系拉入战争。这也假定依赖关系具有正确声明的范围,在您的情况下听起来像默认的编译