我在使我的项目基于 Maven 时遇到了这个奇怪的问题。我创建了一个新的Maven在 Eclipse 中创建项目并启用动态 Web 方面。但在运行时现在它会抛出ClassNotFoundException
因为 Maven 依赖项没有复制到WEB-INF/lib
目录。我什至尝试添加复制依赖项POM 中的部分,但这没有帮助。
Someone here似乎已经以正确的方式解决了这个问题,但我猜他忘了提及解决方案::(
这应该与 eclipse 和 m2eclipse 无关,并且可以选择获得更好的支持 -m2e-wtp。此外,您不需要复制依赖项。以下是一些可能的原因:
- 你应该调用
mvn package
(或者右键>maven>package)并获取一个war文件——<packaging>
(在 pom 中)必须是war
- 您的依赖项应该具有默认范围(如果它们是
provided
or test
它们不会包含在档案中)
- 如果您在 Eclipse 中的服务器上将项目作为动态 Web 项目运行,那么您应该打开项目属性(右键单击 > 属性)并选择“部署程序集”。单击“添加”,选择“构建路径条目”,然后选择“maven 依赖项”。这将指示 WTP 将 Maven 依赖项发送到服务器目录。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)