WSL 遠端開發
本教學課程將引導您啟用 Windows Subsystem for Linux (WSL),並使用 WSL 擴充功能在 WSL 中執行 Visual Studio Code。
先決條件
您需要安裝 Visual Studio Code。
安裝擴充功能
WSL 擴充功能可讓您在 Windows Subsystem for Linux (WSL) 中執行 Visual Studio Code。
先決條件檢查
安裝 WSL 擴充功能後,您會在最左側看到新的狀態列項目。
「遠端」狀態列項目可以快速顯示 VS Code 正在哪個內容中執行 (本機或遠端),並且按一下該項目會顯示 WSL 擴充功能命令。
啟用 WSL
Windows Subsystem for Linux (WSL) 是 Windows 10 上的選用功能。您可以透過 Windows 功能對話方塊或 PowerShell 啟用它。
Windows 功能對話方塊
在 Windows 搜尋列中,輸入 'features' 以顯示「開啟或關閉 Windows 功能」對話方塊。向下捲動並勾選「Windows Subsystem for Linux」。
選取「確定」,系統會提示您重新啟動 Windows。
PowerShell
如果您願意,可以以管理員身分開啟 PowerShell 並輸入
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
命令執行後,系統會提示您重新啟動 Windows。
檢查 WSL
重新啟動 Windows 後,您可以開啟命令提示字元並輸入 'wsl',以檢查您是否已啟用 WSL。
WSL 已啟用,但您尚未安裝 Linux 發行版。
安裝 Linux 發行版
您可以從 Microsoft Store 安裝適用於 WSL 的 Linux 發行版。您可以使用市集應用程式,或在 Windows 搜尋列中搜尋 Linux 發行版。選擇您要安裝的 Linux 發行版 (例如 Ubuntu) 並依照提示操作。
選取「安裝」。
完成後,選取「啟動」以開始使用。這將開啟 Linux 終端機並完成安裝。由於您正在設定完整的 Linux 執行個體,因此您需要建立使用者 ID 和密碼。您現在正在 Windows 上執行 Linux。
Python 開發
如果您尚未安裝 Python,請執行下列命令,將 Python 的套件管理工具 Python3 和 pip 安裝到您的 Linux 安裝中。
sudo apt update
sudo apt install python3 python3-pip
若要驗證,請執行
python3 --version
從標準的「Hello World」應用程式開始。建立一個名為「helloWorld」的新資料夾,然後新增一個 Python 檔案,該檔案在執行時會列印訊息
mkdir helloWorld && cd helloWorld
echo 'print("hello from python on ubuntu on windows!")' >> hello.py
python3 hello.py
在遠端 Linux 環境中 (此 WSL 發行版在技術上是另一部沒有 UI 的機器,只是剛好在本機電腦上執行),您的開發工具和體驗相當有限。您可以在終端機中執行 Vim 來編輯您的檔案,或者您可以透過 \\wsl$
掛載在 Windows 端編輯來源
此模型的缺點是 Python 執行階段、pip 或任何 conda 套件都未安裝在 Windows 上。
請記住,Python 是安裝在 Linux 發行版中的,這表示如果您在 Windows 端編輯 Python 檔案,除非您在 Windows 上安裝相同的 Python 開發堆疊,否則您無法執行或偵錯它們。而這就失去了設定具有所有 Python 工具和執行階段的隔離 Linux 執行個體的目的!
在 WSL 中執行
在 WSL 終端機中,請確定您位於 helloWorld 資料夾中,然後輸入 'code .'
以啟動 Visual Studio Code。'.'
引數會告知 VS Code 開啟目前資料夾。如果您使用 Insiders 版本的 VS Code,則必須改為執行 'code-insiders .'
。
注意: 如果此命令無效,您可能需要重新啟動終端機,或者您可能在安裝時未將 VS Code 新增至您的路徑。
您首先會看到一則關於「安裝 VS Code Server」的訊息 (c7d83e57… 編號是 VS Code Server 的版本,與您剛安裝的用戶端工具相符)。VS Code 正在 Linux 端安裝一個小型伺服器,桌面 VS Code 稍後將與之通訊。然後,該伺服器將在 WSL 中安裝和託管擴充功能,以便它們在 WSL 中安裝的工具和框架的內容中執行。換句話說,您的語言擴充功能將針對 WSL 中安裝的工具和框架執行,而不是針對 Windows 端安裝的工具和框架執行,這才是正確開發體驗應有的方式。
接下來發生的事情是 VS Code 將啟動並開啟 helloWorld
資料夾。您可能會看到快速通知,告知您 VS Code 正在連線到 WSL,並且可能會提示您允許存取以 Node.js 為基礎的伺服器。
現在,當您將滑鼠游標停留在 hello.py
上時,您會取得正確的 Linux 路徑。
整合式終端機
執行終端機 > 新增終端機 (⌃` (Windows, Linux Ctrl+`)) 以開啟新的終端機執行個體。
您將在 WSL 中啟動 bash shell 的新執行個體,同樣是從 Windows 上執行的 VS Code 啟動。
提示: 在狀態列的左下角,您可以看到您已連線到您的 WSL: Ubuntu 執行個體。
編輯與偵錯
安裝 Python 擴充功能 (和額外工具)
按一下 hello.py
以開啟進行編輯。系統會提示您擴充功能建議,在此案例中為安裝 Microsoft Python 擴充功能,這將為您提供豐富的編輯和偵錯體驗。繼續選取「安裝」,並在出現提示時重新載入。
為了證明擴充功能已安裝在 WSL 中,請再次開啟「擴充功能」檢視 (⇧⌘X (Windows, Linux Ctrl+Shift+X))。您會看到一個標題為 WSL: Ubuntu – 已安裝 的區段,而且您可以看到任何安裝在 WSL 端的擴充功能。
重新載入後,您也會收到提示,告知您尚未安裝 pylint linter。Linter 用於顯示原始碼中的錯誤和警告。繼續選取「安裝」。
現在,當您編輯程式碼時,您會獲得豐富的色彩標示和完成功能。
而且當您儲存檔案 (⌘S (Windows, Linux Ctrl+S)) 時,您會在檔案上收到程式碼檢查錯誤和警告。
偵錯
設定好工具後,讓我們更進一步。在 hello.py 的第 1 行設定中斷點,方法是按一下行號左側的邊界,或將游標放在該行上並按下 F9。
現在,按下 F5 以執行您的應用程式。系統會詢問您要如何執行應用程式,由於這是一個簡單的檔案,因此只需選擇「Python 檔案」。
應用程式將會啟動,而且您會遇到中斷點。您可以檢查變數、建立監看式,以及瀏覽呼叫堆疊。
按下 F10 以逐步執行,您會在偵錯主控台中看到 print 陳述式的輸出。
您可以使用 WSL 中安裝的 Linux 執行個體,獲得完整的 Visual Studio Code 開發體驗。
如果您想要在 WSL 中開啟另一個資料夾,請開啟「檔案」功能表並選擇「開啟資料夾」。您會取得適用於 Linux 檔案系統的最小檔案和資料夾導覽器,而不是 Windows 檔案系統。
如果您想要切換回 Windows,請選取「顯示本機」選項,您會取得標準的 Windows「開啟檔案」對話方塊。
結束您的 WSL 連線
您可以結束您在 WSL 中的工作階段,並使用「檔案」>「關閉遠端連線」返回在本機執行 VS Code。
恭喜
恭喜您,您已成功完成本教學課程!
接下來,請查看其他遠端開發擴充功能。
或者安裝「遠端開發擴充功能套件」以取得所有擴充功能。