【问题标题】:Maven dependency causes NoClassDefFoundError in servletMaven 依赖导致 servlet 中的 NoClassDefFoundError
【发布时间】:2020-07-28 19:46:41
【问题描述】:
我在 Eclipse 中创建了一个 servlet 作为动态 Web 项目,然后将其转换为 Maven 项目。我最初将它创建为一个简单的“Hello World”servlet,“Run on Server”运行良好。
然后,我在我的工作区中添加了另一个 (Maven) 项目作为依赖项,并引用了该项目中的一个类。现在,只要引用了依赖项中的类,servlet 就会失败并出现NoClassDefFoundError 异常。什么给了?
【问题讨论】:
标签:
eclipse
maven
servlets
dependencies
【解决方案1】:
浏览其他一些问题,我发现了一些有用的提示:
我在项目上尝试了 Run as > maven install,但失败并出现错误,表明无法找到我的依赖项。事实证明,我需要先将我的依赖项添加到我的本地 repo 中——这里的行为与标准 Java 应用程序不同。
选择依赖项,然后Run as > maven install 将依赖项存储在本地存储库中。
之后,我可以在我的服务器上运行 servlet,没有其他问题。