這篇文章主要講解了“如何利用IDEA遠(yuǎn)程調(diào)試代碼”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“如何利用IDEA遠(yuǎn)程調(diào)試代碼”吧!
專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)北安免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
在工作經(jīng)常遇到連接開(kāi)發(fā)數(shù)據(jù)庫(kù),程序沒(méi)有問(wèn)題,但一到線上或者測(cè)試環(huán)境運(yùn)行就出現(xiàn)各種問(wèn)題,現(xiàn)在我們來(lái)配置遠(yuǎn)程debug。
本機(jī)和遠(yuǎn)程主機(jī)的兩個(gè) VM 之間使用 Debug 協(xié)議通過(guò) Socket 通信,傳遞調(diào)試指令和調(diào)試信息。
被調(diào)試程序的遠(yuǎn)程虛擬機(jī):作為 Debug 服務(wù)端,監(jiān)聽(tīng) Debug 調(diào)試指令。jdwp是Java Debug Wire Protocol的縮寫(xiě)。
調(diào)試程序的本地虛擬機(jī):IDEA 中配置的 Remote Server,指定 Debug 服務(wù)器的Host:Port,以供 Debug 客戶端程序連接。
1、利用spring-boot創(chuàng)建測(cè)試項(xiàng)目ares-boot,并編寫(xiě)測(cè)試Controller
package com.ares.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/hello") public class HelloController { @RequestMapping("") public String hello(String name) { return "hello " + name; } }
打成jar包,利用java -jar 啟動(dòng)服務(wù)
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:10090 -jar ares-springboot-1.0.0.jar --server.port=9090
其中 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:10090 指定開(kāi)放調(diào)試的端口
2、IDEA配置啟動(dòng)環(huán)境(Debug服務(wù)器)
新建remote
配置要調(diào)試的服務(wù)地址和端口
利用debug啟動(dòng),瀏覽器訪問(wèn)http://localhost:9090/hello,我們發(fā)現(xiàn)Idea已經(jīng)進(jìn)入的debug模式
注意:
1)有時(shí)候調(diào)試時(shí)提示Connect time out,這時(shí)候需要關(guān)閉防火墻
2)只有本地和遠(yuǎn)程的代碼保持一致才能進(jìn)行遠(yuǎn)程調(diào)試
感謝各位的閱讀,以上就是“如何利用IDEA遠(yuǎn)程調(diào)試代碼”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)如何利用IDEA遠(yuǎn)程調(diào)試代碼這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!