溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

發(fā)布時(shí)間:2020-07-17 09:55:13 來(lái)源:億速云 閱讀:161 作者:小豬 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要講解了如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。

最近兩天在Linux中調(diào)試.NET Core應(yīng)用程序,同時(shí)我發(fā)現(xiàn)在Linux中調(diào)試.NET Core應(yīng)用程序并不容易。一直習(xí)慣在Visual Studio中進(jìn)行編碼和調(diào)試?,F(xiàn)在我想的是可以簡(jiǎn)單快速的測(cè)試.NET Core應(yīng)用在Linux。所以通過(guò)本篇文章我們能了解到如何在Windows中使用Visual Studio進(jìn)行遠(yuǎn)程調(diào)試我們部署在Linux中的應(yīng)用程序,從而我們可以去發(fā)現(xiàn)或者說(shuō)去調(diào)試在中會(huì)產(chǎn)生的一些問(wèn)題。

Windows中的Linux:Hello WSL

第一步從windows開(kāi)啟wsl

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

我們可以搜到他并打開(kāi)

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

打開(kāi)后我們可以看到如下內(nèi)容

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

因?yàn)橐粫?huì)我需要對(duì)他進(jìn)行調(diào)試所以我這邊選擇的是DEBUG

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

通過(guò)上面一波操作后我們需要做的是在WSL提示符下,輸入dotnet并加上我們的應(yīng)用程序集名稱(chēng)

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

現(xiàn)在我們已經(jīng)將我們的應(yīng)用程序發(fā)布到了linux中如下所示

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

如何附加到正在運(yùn)行的Linux應(yīng)用程序

正如上面所述,我想要做的是在Visual Studio中調(diào)試Linux應(yīng)用程序,那么下面我們來(lái)看一下附加

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

SSH連接類(lèi)型將與具有以下通信架構(gòu)的WSL一起使用:

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

我們需要安裝vsdbg調(diào)試器,然后通過(guò)SSH通到將命令發(fā)送到Linux調(diào)試器。

默認(rèn)情況下,SSH服務(wù)器與WSL一起安裝。但是,我無(wú)法使整個(gè)管道都可以使用,因此必須卸載并重新安裝它:

sudo apt-get remove openssh-server

sudo apt-get install openssh-server

更改SSH配置,以允許 Visual Studio所需的用戶(hù)名/密碼類(lèi)型的安全性,如果不知道如何有效地使用vi來(lái)簡(jiǎn)單地編輯文件,請(qǐng)安裝nano

sudo apt-get install nano

在/etc/ssh/sshd_config中,更改PasswordAuthentication設(shè)置

sudo nano /etc/ssh/sshd_config

PasswordAuthentication yes

重啟SSH服務(wù)器

sudo service ssh start

安裝解壓縮才能獲取vsdbg

sudo apt-get install unzip

curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -v latest -l ~/vsdbg

現(xiàn)在我們可以選擇SSH作為連接類(lèi)型,同時(shí)需要點(diǎn)擊“刷新”按鈕將這些信息填充,如下所示:

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

單擊“刷新”按鈕后,底部的列表應(yīng)包含在WSL中運(yùn)行的Linux進(jìn)程。

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

選擇.NET Core應(yīng)用程序,然后單擊附加選擇托管調(diào)試器:

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

當(dāng)我們?cè)诖a中設(shè)置斷點(diǎn)之后,并且觸發(fā)我們?cè)O(shè)置的斷點(diǎn)就會(huì)達(dá)到如下效果:

如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序

通過(guò)上面內(nèi)容來(lái)說(shuō)我們以達(dá)到了我們預(yù)期的想法,我們可以通過(guò)Visual Studio借助WSL進(jìn)行調(diào)試Linux應(yīng)用程序。當(dāng)然對(duì)于這一塊我也在尋找更便捷的方式,當(dāng)然我還發(fā)現(xiàn)一個(gè)
.NET Core Debugging with WSL 2.

Reference

https://www.hanselman.com/blog/RemoteDebuggingANETCoreLinuxAppInWSL2FromVisualStudioOnWindows.aspx

https://devblogs.microsoft.com/devops/debugging-net-core-on-unix-over-ssh/

https://medium.com/criteo-labs/wsl-visual-studio-attaching-launching-a-linux-net-core-application-on-my-window-10-ab21c179702d

https://github.com/Microsoft/MIEngine/wiki/Offroad-Debugging-of-.NET-Core-on-Linux---OSX-from-Visual-Studio

看完上述內(nèi)容,是不是對(duì)如何通過(guò)Windows Visual Studio遠(yuǎn)程調(diào)試WSL2中的.NET Core Linux應(yīng)用程序有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI