Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Ladění .NET aplikací spuštěných na sbc založených na ARM, jako je Raspberry Pi, představuje jedinečnou výzvu. V případě potřeby můžete na zařízení nainstalovat Visual Studio Code a sadu .NET SDK a místně vyvíjet. Výkon zařízení je ale takový, že kódování a ladění místně není ideální. Rozšíření Visual Studio Code pro C# navíc není kompatibilní s 32bitovými operačními systémy ARM. V důsledku toho se funkce jako IntelliSense a ladění v Visual Studio Code na zařízeních ARM podporují jenom v 64bitových systémech.
Z těchto důvodů důrazně doporučujeme vyvíjet aplikaci na vývojovém počítači a pak ji nasadit do zařízení pro vzdálené ladění. Pokud chcete vyvíjet a ladit místně na zařízení, je nutné provést následující:
- 64bitový operační systém s desktopovým prostředím, jako je Raspberry Pi OS (64bitová verze).
-
Visual Studio Code s příponou C#.
- Zakažte hardwarovou akceleraci.
- .NET SDK 10 nebo novější.
- Nainstalujte pomocí skriptu dotnet-installjako v nasazení závislém na rozhraní. Nezapomeňte přidat proměnnou
DOTNET_ROOTprostředí a přidat adresář .dotnet do$PATH.
- Nainstalujte pomocí skriptu dotnet-installjako v nasazení závislém na rozhraní. Nezapomeňte přidat proměnnou
Zbytek tohoto článku popisuje, jak ladit .NET aplikace na počítačích s jednou deskou vzdáleně z vývojového počítače.
Ladění ve Visual Studio Code (napříč platformami)
Ladění .NET na počítačích s jednou deskou z Visual Studio Code vyžaduje kroky konfigurace na SBC a v souboru launch.json projektu.
Povolení SSH na SBC
Pro vzdálené ladění se vyžaduje protokol SSH. Pokud chcete povolit SSH na Raspberry Pi, přečtěte si téma Povolení SSH v dokumentaci k Raspberry Pi. Ujistěte se, že jste nakonfigurovali SSH bez hesla.
Důležité
Tento příklad vyžaduje, abyste na zařízení nakonfigurovali SSH bez hesla , protože OpenSSH nepodporuje předávání hesel na příkazovém řádku. Pokud potřebujete použít heslo, zvažte nahrazení nástroje Plink proSSH.
Instalace vzdáleného ladicího programu Visual Studio na SBC
V konzole Bash v SBC (buď v místní relaci nebo přes SSH), spusťte následující příkaz. Tento příkaz stáhne a nainstaluje vzdálený ladicí program Visual Studio na zařízení.
curl -sSL https://aka.ms/getvsdbgsh | /bin/sh /dev/stdin -v latest -l ~/vsdbg
Nastavení launch.json v Visual Studio Code
Na vývojovém počítači přidejte do launch.jsonprojektu spouštěcí konfiguraci . Pokud projekt nemá soubor launch.json, přidejte ho tak, že přepnete na kartu Spustit, vyberete vytvoření souboru launch.json a v dialogovém okně zvolíte .NET nebo .NET Core.
Nová konfigurace v launch.json by měla vypadat nějak takto:
"configurations": [
{
"name": ".NET Remote Launch - Self-contained",
"type": "coreclr",
"request": "launch",
"program": "~/sample/sample",
"args": [],
"cwd": "~/sample",
"stopAtEntry": false,
"console": "internalConsole",
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "ssh",
"pipeArgs": [
"pi@raspberrypi"
],
"debuggerPath": "~/vsdbg/vsdbg"
}
},
Všimněte si následujících věcí:
-
programje spustitelný soubor vytvořený nástrojemdotnet publish. -
cwdje pracovní adresář, který se má použít při spuštění aplikace na zařízení. -
pipeProgramje cesta k klientovi SSH na místním počítači. -
pipeArgsjsou parametry, které se mají předat klientovi SSH. Nezapomeňte zadat parametr hesla ipiuživatele ve formátu<user>@<hostname>.
Nasazení aplikace
Nasaďte aplikaci, jak je popsáno v Deploy .NET aplikace do jednodeskových počítačů ARM. Ujistěte se, že je cesta nasazení stejná jako v parametru cwd v konfiguraci launch.json .
Spuštění ladicího programu
V Visual Studio Code vyberte na kartě Run and Debug konfiguraci, kterou jste přidali do launch.json a vyberte Start Debugging. Aplikace se spustí na zařízení. Ladicí program lze použít k nastavení zarážek, kontrole lokálních proměnných a dalších funkcí.
Ladění z Visual Studio na Windows
Visual Studio můžou ladit aplikace .NET na vzdálených zařízeních přes SSH. Na zařízení není nutná žádná specializovaná konfigurace. Podrobnosti o vzdáleném ladění .NET pomocí Visual Studio najdete v tématu Remote ladění .NET v Linuxu pomocí SSH.
Nezapomeňte vybrat proces dotnet, pokud ladíte nasazení závislé na rozhraní frameworku. Jinak se proces pojmenuje stejně jako spustitelný soubor aplikace.