Megosztás a következőn keresztül:


.NET-alkalmazások hibakeresése arm-alapú egytáblás számítógépeken

A Raspberry Pi-hez hasonló ARM-alapú SBC-n futó .NET-alkalmazások hibakeresése egyedi kihívást jelent. Igény szerint telepítheti a Visual Studio Code-ot és a .NET SDK-t az eszközre, és helyileg fejleszthet. Az eszköz teljesítménye azonban olyan, hogy a helyi kódolás és hibakeresés nem ideális. Emellett a C# Visual Studio Code-bővítménye nem kompatibilis a 32 bites ARM operációs rendszerekkel. Következésképpen az olyan funkciók, mint az IntelliSense és a Visual Studio Code hibakeresése ARM-eszközökön csak 64 bites rendszerekben támogatottak.

Ezért erősen ajánlott fejlesztőszámítógépen fejleszteni az alkalmazást, majd telepíteni az alkalmazást az eszközön távoli hibakeresés céljából. Ha helyileg szeretne fejlesztést és hibakeresést végezni az eszközön, a következőkre van szükség:

A cikk további része azt ismerteti, hogyan hibakeresést végezhet a .NET-alkalmazásokban egy alaplapi számítógépeken, távolról egy fejlesztői számítógépről.

Fontos

Az írás során a .NET 7-alkalmazások linux-arm távoli hibakeresése a környezetekben megbízhatatlan, és a folyamat idő előtti kilépését okozhatja. A probléma kivizsgálása folyamatban van. A célként megadott linux-arm .NET 6-alkalmazások és a célként megadott linux-arm64 .NET 7-alkalmazások nem változnak.

Hibakeresés a Visual Studio Code-ból (platformfüggetlen)

A .NET hibakereséséhez a Visual Studio Code-ból származó egytáblás számítógépeken az SBC és a projekt launch.json fájljának konfigurációs lépéseire van szükség.

SSH engedélyezése az SBC-n

A távoli hibakereséshez SSH szükséges. Az SSH Raspberry Pi-en való engedélyezéséhez tekintse meg az SSH engedélyezését a Raspberry Pi dokumentációjában. Győződjön meg arról, hogy jelszó nélküli SSH-t konfigurált.

Fontos

Ebben a példában jelszó nélküli SSH-t kell konfigurálnia az eszközön, mivel az OpenSSH nem támogatja a jelszavak parancssori átadását. Ha jelszót kell használnia, fontolja meg az ssh-hoz készült Plink eszköz helyettesítését.

A Visual Studio Távoli hibakereső telepítése az SBC-n

Az SBC Bash-konzolján (helyi munkamenetben vagy SSH-n keresztül) futtassa a következő parancsot. Ez a parancs letölti és telepíti a Visual Studio távoli hibakeresőt az eszközön:

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

Launch.json beállítása a Visual Studio Code-ban

A fejlesztői számítógépen adjon hozzá egy indítási konfigurációt a projekt launch.json. Ha a projekt nem rendelkezik launch.json fájllal, vegyen fel egyet a Futtatás lapra való váltással, a launch.json fájl létrehozásával, majd a .NET vagy a .NET Core kiválasztásával a párbeszédpanelen.

A launch.json új konfigurációjának az alábbihoz hasonlóan kell kinéznie:

"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"
        }
    },

Figyelje meg a következőket:

  • program az a végrehajtható fájl, amelyet a dotnet publishkövetkező hozott létre: .
  • cwd az alkalmazás eszközre való indításakor használandó munkakönyvtár.
  • pipeProgram A helyi gépen található SSH-ügyfél elérési útja.
  • pipeArgs az SSH-ügyfélnek továbbítandó paraméterek. Mindenképpen adja meg a jelszóparamétert, valamint a pi felhasználót a formátumban <user>@<hostname>.

Az alkalmazás üzembe helyezése

Az alkalmazás üzembe helyezése a .NET-alkalmazások telepítése ARM-alapú egytáblás számítógépeken című cikkben leírtak szerint. Győződjön meg arról, hogy az üzembe helyezési útvonal megegyezik a cwd launch.json konfiguráció paraméterében megadott elérési útval.

A hibakereső elindítása

A Visual Studio Code Futtatás és hibakeresés lapján válassza ki a launch.json hozzáadott konfigurációt, majd válassza a Hibakeresés indítása lehetőséget. Az alkalmazás elindul az eszközön. A hibakereső használható töréspontok beállítására, helyiek vizsgálatára és egyebekre.

Hibakeresés a Visual Studióból Windows rendszeren

A Visual Studio az SSH-n keresztül képes a .NET-alkalmazások hibakeresésére távoli eszközökön. Az eszközön nincs szükség speciális konfigurációra. A .NET távoli hibakeresésére a Visual Studio használatával kapcsolatos részletekért lásd : Távoli hibakeresés .NET Linuxon SSH használatával.

Mindenképpen válassza ki a dotnet folyamatot, ha keretrendszerfüggő üzemelő példányt keres. Ellenkező esetben a folyamat neve megegyezik az alkalmazás végrehajtható fájljával.