Spring MVC Maven项目中@GetMapping无法导入问题求助
嘿,作为Spring MVC新手碰到这种依赖问题真的太常见了,别慌,咱们一步步来排查原因:
先检查Maven依赖是否正确下载
有时候网络波动或者Maven的小bug会导致jar包没拉全,你可以去本地Maven仓库(默认路径是~/.m2/repository/org/springframework/spring-webmvc/5.2.3.RELEASE)看看有没有完整的jar包文件。如果缺失或者文件损坏,就在IDE里右键项目选择「Maven -> Reload Project」重新加载依赖。清理IDE缓存试试
IDE的缓存偶尔会“抽风”,明明依赖已经下载了却识别不到。比如用IntelliJ的话,可以点击「File -> Invalidate Caches / Restart」;用Eclipse就选「Project -> Clean」,然后重启IDE应该就能解决。确认导入语句没写错
一定要保证你的导入语句是import org.springframework.web.bind.annotation.GetMapping;,别把包名写错了——要是导入了别的包下的同名注解(虽然概率低,但也有可能),肯定会报错找不到。修正Maven配置里的小错误
看你贴的依赖配置里有个注释写错了:<!-- Spring dependencies --!>应该改成<!-- Spring dependencies -->,这个注释错误一般不会直接导致依赖问题,但最好修正过来,避免Maven解析时出现意外的小问题。修正后的完整依赖配置应该是这样:
<!-- Spring dependencies --> <!-- Spring IOC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.2.3.RELEASE</version> </dependency> <!-- Spring container --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.3.RELEASE</version> </dependency> <!-- Spring JDBC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.3.RELEASE</version> </dependency> <!-- Spring MVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.2.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.3.RELEASE</version> </dependency>
如果以上方法都试过还是不行,那就手动删除本地仓库里spring-webmvc的整个文件夹,再重新让Maven下载一次,确保jar包是完整无损坏的。
内容的提问来源于stack exchange,提问作者ryan




