春季启动2.1-NoSuchMethodError-getDispatcherServlet()

时间:2018-10-30 20:35:59

标签: spring-boot

只需从 Spring Boot 2.0.6 升级到 Spring Boot 2.1.0 ,并在我现有的@WebMvcTest带注释的测试中得到此错误:

  

java.lang.NoSuchMethodError:org.springframework.test.web.servlet.MockMvc.getDispatcherServlet()

我的测试如下:

@RunWith(SpringRunner.class)
@WebMvcTest(value = SubscriptionsResource.class, secure = false)
@ActiveProfiles("test")
public class SubscriptionsResourceTest {

  @Autowired
  private MockMvc mockMvc;

  @MockBean
  private SomeService someservice;

  @Test
  public void someTestMethod() throws Exception {
    //test content
    }
}

我曾尝试按照发行版notes中的建议删除secure = false以便使用@WithMockUser,但是存在相同的问题。

TIA。

1 个答案:

答案 0 :(得分:0)

这是由于我的pom具有spring-test依赖性:

<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-test</artifactId>
   <version>5.0.7.RELEASE</version>
   <scope>compile</scope>
</dependency>

删除此内容即可解决问题。