如何使用IntelliJ调试SpringBoot应用?新手求助调试方法
Spring Boot 调试方法及IntelliJ 调试指南
一、IntelliJ IDEA 调试Spring Boot应用
完全可以用IntelliJ调试Spring Boot应用,这是开发者首选的调试方式之一,操作步骤如下:
- 本地直接调试:找到带
@SpringBootApplication注解的主启动类,点击代码行号左侧空白区域打断点(出现红色圆点),然后点击主类旁的绿色调试图标(小虫子),或右键选择「Debug '你的主类名'」启动调试。程序执行到断点会自动暂停,此时可查看变量值、通过快捷键(F7步入方法、F8步过代码、F9继续执行)控制流程。 - 远程应用调试:如果应用已在远程服务器启动,先确保启动时添加JVM调试参数:
接着在IntelliJ中点击「Run」→「Edit Configurations」,添加「Remote JVM Debug」配置,填写远程主机地址和端口(5005),启动调试即可连接远程应用。java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 your-app.jar
二、其他通用调试方法
- 日志打印调试:无需打断点,直接在代码中打印关键变量。推荐使用SLF4J日志框架(Spring Boot默认集成),示例代码:
import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class YourService { private static final Logger logger = LoggerFactory.getLogger(YourService.class); public void processUser(Long userId) { // 打印变量值 logger.info("处理用户ID: {}", userId); } } - 命令行启动调试:通过Maven或Gradle启动应用时添加调试参数,示例Maven命令:
启动后可使用任意支持JVM调试的工具连接。mvn spring-boot:run -Dspring-boot.run.jvmArguments="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" - Spring Boot DevTools 辅助调试:添加DevTools依赖后,代码修改会自动重启应用,配合断点调试提升效率。Maven依赖配置:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>
内容的提问来源于stack exchange,提问作者Gautham Sharma
相关产品推荐
相关产品推荐

