7

我有一个非常大的工作区,总共有大约 30 个项目。我正在使用带有 m2eclipse 的 Eclipse 3.5。我使用默认值签出我的 subversion 存储库,以便将项目导入我的工作区。

我创建一个 Tomcat 服务器实例,并将我的 Web 项目发布到 Tomcat 服务器。听起来很容易。

问题是它似乎没有像我的其他项目的传递依赖项被自动添加到容器中,所以当容器启动时,我得到了 classnotfound 异常等。

我进入 web 项目的属性,我注意到 Java EE 模块依赖项没有检查某些传递依赖项。我检查了它们,在我进行项目清理构建之前,一切似乎都有效,当 Java EE 模块依赖项被 eclipse 自动重置时,我需要重新检查它们。这令人抓狂,我希望在使用 Eclipse WTP 时有某种方法可以自动引入所有传递依赖项。

我应该提到,使用标准的 maven 构建工作得很好,并且所有内容都被适当地拉入生成的 WAR 文件中。出于某种原因,它在 WTP 上的效果并不好。

4

3 回答 3

13

您需要确保安装了 m2eclipse 中的“Maven 集成 WTP”功能。http://docs.sonatype.org/display/M2ECLIPSE/WTP+mini+howto上有一个简单的教程

您使用的是什么版本的 WTP 和 m2eclipse?检查项目 pom.xml 中声明的依赖版本是否与工作区项目中声明的版本匹配,并确保已启用工作区依赖解析。

此外,您可以尝试从项目弹出菜单中运行“Maven / 更新项目配置”,并检查 Maven 控制台和 Eclipse 自己的日志中是否没有错误。

如果上述方法没有帮助,请尝试在较小的项目上重现问题,然后将其与错误报告一起提交

于 2009-12-03T01:30:58.040 回答
1

似乎最新版本的 m2eclipse (.99x) 解决了我的所有问题。

于 2009-12-14T16:30:38.447 回答
0

如果您想使用 m2eclipse wtp 附加功能,您需要注意它们不受 Sonatype 支持,虽然大部分都可以,但不是 100% 健壮的。

请参阅http://maven.40175.n5.nabble.com/What-is-the-recommended-alternative-to-m2eclipse-extras-WTP-integration-td135727.html

于 2010-11-29T10:46:56.460 回答