2009-11-30 66 views
7

我有一个非常大的工作空间,共有大约30个项目。我正在使用Eclipse 3.5和m2eclipse。我使用默认值检出Subversion存储库,以将项目导入到我的工作区中。m2eclipse和Eclipse WTP

我创建一个Tomcat服务器实例,并将我的web项目发布到tomcat服务器。听起来很简单。

的问题是,它不会出现好像对我的其他项目的传递性依赖被自动添加到容器中,所以当容器启动时,我得到ClassNotFound的异常等

我进入web项目的属性,我注意到Java EE模块依赖关系没有被检查一些传递依赖。我检查了它们,一切似乎都有效,直到我执行了一个项目清理构建,此时Java EE模块依赖项通过eclipse自动重置,所以我需要重新检查它们。这令人生气,我希望有一些方法可以在使用Eclipse WTP时自动引入所有传递依赖关系。

我应该提到,使用标准的maven构建工作就好了,并且所有东西都被适当地引入到生成的WAR文件中。由于某些原因,WTP对于WTP并不适用。

回答

13

你需要确保你已经安装了m2eclipse的“Maven integration for WTP”功能。有一个简单的教程可在http://docs.sonatype.org/display/M2ECLIPSE/WTP+mini+howto

你正在使用什么版本的WTP和m2eclipse?检查项目的pom.xml中声明的依赖项版本是否与工作区项目中声明的版本匹配,并确保已启用工作区依赖项解析。另外,您可以尝试从项目弹出菜单中运行“Maven/Update项目配置”,并检查Maven控制台和Eclipse自己的日志中是否存在错误。

如果上面不会有帮助,尝试重现上一个较小的项目问题,然后用一个错误报告提交

+0

是的,我有WTP安装Maven的整合,我已经通过该教程。我有同样的问题。 – noplay 2009-12-03 01:56:13

+0

+1,像魅力一样工作。 – Leonel 2010-06-11 14:21:52

+4

Howto已被移至:https://docs.sonatype.org/display/M2ECLIPSE/WTP+mini+howto – 2010-06-23 03:03:54

1

看来好像最新版本的m2eclipse的(.99x)解决了我所有的问题。