VS Code中Spring Boot项目Postman请求404问题求助
解决方案
一、解决Spring Boot接口404问题
1. 修复组件扫描范围
你的主类TulipApplication位于com.ekart.tulip包,而控制器TulipController在com.ekart.controller包下。@SpringBootApplication默认仅扫描主类所在包及其子包,导致Spring无法识别控制器类,接口映射未注册。
修改主类,添加@ComponentScan指定根扫描包:
package com.ekart.tulip; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan; @SpringBootApplication @ComponentScan(basePackages = "com.ekart") // 扫描com.ekart下所有子包 public class TulipApplication { public static void main(String[] args) { SpringApplication.run(TulipApplication.class, args); } }
2. 验证接口映射状态
启动应用后,查看控制台日志,确认是否存在类似以下的映射记录:
Mapped "{[/tulip/testing],methods=[GET]}" onto public java.lang.String com.ekart.controller.TulipController.testing()
出现该日志则说明接口已正确注册。
3. 核对端口与请求信息
- 确认应用运行端口为8080,控制台会输出
Tomcat started on port(s): 8080 (http) - 检查请求URL:
http://localhost:8080/tulip/testing无拼写错误,请求方法为GET
4. 检查控制器注解有效性
确认控制器类的@RestController、@RequestMapping("/tulip")等注解均来自org.springframework.web.bind.annotation包,无包名导入错误。
二、解决Windows Defender相关限制问题
1. 扩展安全排除项
仅添加VS Code到排除项不足以解决问题,需补充以下排除目录:
- Java安装目录(例如
C:\Program Files\Java\jdk-x.x.x) - 本地项目工作目录
- npx缓存目录(默认路径
C:\Users\<你的用户名>\AppData\Roaming\npm-cache)
操作路径:Windows Defender安全中心 → 病毒和威胁防护 → 病毒和威胁防护设置 → 添加或删除排除项 → 逐一添加上述目录
2. 适配公司电脑安全策略
公司电脑STS可正常运行,大概率是STS已加入企业信任列表。可尝试:
- 将VS Code安装目录、Java进程加入Windows Defender信任列表
- 联系IT部门确认是否有组策略限制VS Code的网络访问权限
3. 提升VS Code终端权限
以管理员身份启动VS Code,再执行npx命令,验证是否仍存在连接被阻止的问题。
内容的提问来源于stack exchange,提问作者Atul Dhadwal
相关产品推荐
相关产品推荐

