我无法在 eclipse 嵌入式 tomcat 中启动 Web 应用程序,但如果我在独立的 tomcat 中部署 war 文件则它可以工作。
我得到的异常是:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name defined in class path resource Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Factory method threw exception; nested exception is java.lang.NoClassDefFoundError: org/mockito/Mockito
异常所指的文件用@Configuration
注解,位于src/test/java;
该文件的目的是为测试用例创建模拟 bean。
最佳答案
问题的修复是这个链接:
How to prevent eclipse from deploying test classes on Tomcat?
问题的原因是,当 eclipse 组装 war 文件时,它会在其中包含 src/test/java 目录,并且缺少测试用例的依赖项。 因为在用于测试的 pom 依赖项中进行了测试,这意味着 Maven 不会将这些 jar 文件包含在最终的 bucked 产品中,这意味着 war 文件。
关于java - Web 应用程序上的 Eclipse tomcat 启动 java.lang.ClassNotFoundException : org. mockito.Mockito,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59476040/