亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

springboot使用IDEA遠程Debug

瀏覽:51日期:2023-03-06 14:45:10
目錄 1、先創建一個準備遠程調試的Demo,注意構建項目的配置2、打包3、在IDEA配置遠程Debug4、在終端啟動剛才打好的jar包5、測試

項目上線之后,如果日志打印的很模糊或者業務邏輯比較復雜,有時候無法定位具體的錯誤原因,因此可以通過IDEA遠程代理進行Debug。

線上的代碼一定要和本地的一致!

環境:

2.1.4.RELEASE(org.springframework.boot) jdk1.8 Apache Maven 3.5.0 1、先創建一個準備遠程調試的Demo,注意構建項目的配置

<?xml version='1.0' encoding='UTF-8'?><project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd'><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.4.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.remote.test</groupId><artifactId>remote_test</artifactId><version>0.0.1-SNAPSHOT</version><name>remote_test</name><description>Demo project for Spring Boot</description> <properties><java.version>1.8</java.version></properties> <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter-api</artifactId><version>RELEASE</version><scope>test</scope></dependency></dependencies> <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-shade-plugin</artifactId><version>2.2</version><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.1.4.RELEASE</version></dependency></dependencies><configuration><keepDependenciesWithProvidedScope>true</keepDependenciesWithProvidedScope><createDependencyReducedPom>false</createDependencyReducedPom><filters><filter><artifact>*:*</artifact><excludes><exclude>META-INF/*.SF</exclude><exclude>META-INF/*.DSA</exclude><exclude>META-INF/*.RSA</exclude></excludes></filter></filters></configuration><executions><execution><phase>package</phase><goals><goal>shade</goal></goals><configuration><finalName>${project.artifactId}-${project.version}-all</finalName><transformers><transformer implementation='org.apache.maven.plugins.shade.resource.AppendingTransformer'><resource>META-INF/spring.handlers</resource></transformer><transformer implementation='org.springframework.boot.maven.PropertiesMergingResourceTransformer'><resource>META-INF/spring.factories</resource></transformer><transformer implementation='org.apache.maven.plugins.shade.resource.AppendingTransformer'><resource>META-INF/spring.schemas</resource></transformer><transformer implementation='org.apache.maven.plugins.shade.resource.ServicesResourceTransformer'/><transformer implementation='org.apache.maven.plugins.shade.resource.ManifestResourceTransformer'><!--根據項目的全名指定啟動類--> <mainClass>com.remote.test.remote_test.RemoteTestApplication</mainClass></transformer></transformers></configuration></execution></executions></plugin></plugins></build></project>

package com.remote.test.remote_test; import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController; import java.util.HashMap;import java.util.Map; @RestController@RequestMapping('remote/test')public class UserController { private static final Logger logger = LoggerFactory.getLogger(UserController.class); @PostMapping('selectByUserId') public String selectUserInfo(@RequestParam('userId') String userId) {try { Map<String,Object> userInfo = new HashMap<>(); userInfo.put('userId',userId); userInfo.put('age',23); userInfo.put('name','yanshao'); userInfo.put('address','shanghai'); logger.info('Query user information by user ID. userInfo: {}',userInfo.toString()); return this.success(userInfo);} catch (Exception e) { logger.error('Query user information by user ID. userId:{} ', userId, e); return this.fail();} } private String success(Object data){Map<String,Object> res = new HashMap<>();res.put('code',0);res.put('desc','success');res.put('data',data);return res.toString(); } private String fail(){Map<String,Object> res = new HashMap<>();res.put('code',1);res.put('desc','fail');return res.toString(); } }2、打包

輸入:mvn clean package,(大概需要等幾分鐘),最好在構建之前指定本地repository,就不需要重新下載jar包了。

springboot使用IDEA遠程Debug

springboot使用IDEA遠程Debug

3、在IDEA配置遠程Debug

指定socket port = 8081,指定準備debug的模塊

springboot使用IDEA遠程Debug

4、在終端啟動剛才打好的jar包

a. 先在IDEA啟動debug

springboot使用IDEA遠程Debug

b. 然后在終端輸入命令:java -agentlib:jdwp=transport=dt_socket,server=n,address=localhost:8081 -jar remote_test-0.0.1-SNAPSHOT-all.jar

springboot使用IDEA遠程Debug

5、測試

在準備請求的接口上標記斷點

springboot使用IDEA遠程Debug

springboot使用IDEA遠程Debug

springboot使用IDEA遠程Debug

注意:必須先在IDEA啟動Debug,然后再啟動項目

➜ Desktop java -agentlib:jdwp=transport=dt_socket,server=n,address=localhost:8081 -jar remote_test-0.0.1-SNAPSHOT-all.jarERROR: transport error 202: connect failed: Connection refusedERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [debugInit.c:750]

到此這篇關于springboot使用IDEA遠程Debug的文章就介紹到這了,更多相關springboot IDEA遠程Debug內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 亚洲 欧美 日韩中文字幕一区二区 | 最新在线观看精品国产福利片 | 国产又黄又爽又色视频影视网免费 | 男人j桶进女人p无遮挡动态图二三 | 久久久久免费 | 日韩中文字幕在线亚洲一区 | 一区二区三区四区精品 | 国产好大好爽久久久久久久 | 国产tv在线 | 国产最新精品2020好看的 | 日韩在线播放一区 | 五月天婷婷网站 | 欧美日韩精彩视频 | 中文字幕无线码一区二区三区 | 欧美精品无需播放器在线观看 | 欧美日韩免费一区二区在线观看 | 国产三级网站在线观看 | 狠狠色丁香久久婷婷综 | 性孕妇video国产 | 伊人久久国产精品 | 国产免费又色又爽又黄的网站 | 久久成人性色生活片 | 亚洲午夜精品久久久久久成年 | 午夜视频色 | 一级视频在线免费观看 | 欧美精品亚洲精品日韩专 | 99精品国产一区二区青青牛奶 | 久久www免费人成精品香蕉 | 日韩中文字幕推理片 | 久久国产首页 | 国产精品7m凸凹视频分类大全 | 亚洲人在线 | 亚洲精品国产成人中文 | 欧美成人免费全网站大片 | 日韩欧美一区二区三区免费观看 | 制服丝袜日韩欧美 | 亚洲国产成人精品一区91 | 香蕉97超级碰碰碰免费公 | 亚洲小younv另类 | 免费的污污网站 | 国产亚洲精品色一区 |