在 Intellij Idea 15 中使用maven时,所有 scope 为 provided
的依赖都是不会被加入到 classpath 中的,目前该bug尚未被修复(bug report)。如果你的web应用是部署到容器中的,那么这个bug不会影响使用,因为web应用中provided
的依赖在容器运行时会被提供。如果你做Spring Boot开发,有带provided
的依赖时,直接在IDE中运行项目会导致ClassNotFound
异常。解决方案有二:
- 使用
spring-boot:run
这个 maven goal 运行程序。但这样会失去 Idea 的 debug功能,不推荐。 - 点击IDE右侧的
Maven Projects
, 找到spring-boot:run
,右键选择 debug 运行,如图:
这种方式 ide 的 debug 功能就能正常使用了。