欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

idea中对springboot进行远程调试

程序员文章站 2024-02-21 20:44:04
...

springboot官方文档:https://docs.spring.io/spring-boot/docs/1.1.x/maven-plugin/examples/run-debug.html
科普一下:为什么要远程调试?
当我们的项目部署到远程的服务器的时候,出错了只能苦逼的打印日志来查看错误信息。远程调试就作用就是你可以在本地进行对你的项目进行调试,很实用有没有。就是说你远程的服务器发布一个项目,发布的时候你需要带一些参数,然后你本地你可以在idea中配一下远程服务器的ip和端口号,然后在本地项目打debug就可以操控你服务器的项目了。
注意:只能调试,修改不起作用。还有,代码一定要保持一致 !!!!!

首先在maven中配置

注意address=5005是指你暴露的监听端口。你idea连的就是这个端口。任意指定

<plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <jvmArguments>
                        -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
                    </jvmArguments>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>

然后用maven插件打包成jar文件。在cmd命令行中发布
注意:这个address号一定要和maven的一致。因为你不写的话,jvm会自动给你创建一个端口,你在命令行中可以看到,那上面的那个address是干吗的?????卧槽 我也不知道 反正都是这样配置的pom中。这些都是我亲测的。放心好了。

java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=n -jar SeeyonCloud-Weather.jar

项目启动成功之后。开始配idea
看图
新增一个远程调用的配置。填上端口号和ip,这个端口号就是我上面说的你如果启动的时候不带address的时候他会自动给你创建一个。这里你端口应该填5005
idea中对springboot进行远程调试
启动成功的画面
idea中对springboot进行远程调试
然后启动这个远程服务就行。
你会发现 你虽然在命令行发布的项目,但是在idea中打断点可以拦截到。牛逼不牛逼 —–

好奇的我十分钟之后的修改

刚测试了一下,在pom中不配置也可以。直接启动的时候加参数就行 springboot太方便了