gpt4 book ai didi

java - 使用 Maven 运行测试显示类路径问题

转载 作者:行者123 更新时间:2023-12-02 20:53:16 24 4
gpt4 key购买 nike

我正在尝试使用 Maven 在我的 Spring Web 应用程序上运行一些单元测试。该应用程序无需测试即可安装并运行良好。

我在我的 Surefire 测试报告中收到此错误:

java.lang.NoClassDefFoundError: javax/servlet/ServletException

测试本身如下所示:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"file:C:/myProjects/myWebapp/src/main/webapp/WEB-INF/applicationContext-test.xml"})
@Transactional
public class MyTest {
...

之前我收到过这个error ,但是我从测试应用程序上下文中删除了对安全包的任何引用。并得到了这个最新的错误。

这两个问题都是由于我的类路径设置不正确引起的?测试时似乎没有包含 Maven 依赖项?我怎样才能改变这个,或者我还缺少什么?

最佳答案

试试这个。

<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>test</scope>
</dependency>

您的 servlet 容器将有这个,但您的一些测试必须需要它。您可能需要调整版本。

范围很重要。您不想将此 jar 捆绑到您的 war 中,但您希望它可用于您的测试。

关于java - 使用 Maven 运行测试显示类路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7419373/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com