Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Debugging aplikasi .NET yang dijalankan pada SBC berbasis ARM seperti Raspberry Pi menghadirkan tantangan unik. Jika diinginkan, Anda dapat menginstal Visual Studio Code dan SDK .NET di perangkat dan mengembangkan secara lokal. Namun, kinerja perangkat sedemikian rupa sehingga pemrograman dan debugging secara lokal tidak ideal. Selain itu, ekstensi Visual Studio Code untuk C# tidak kompatibel dengan sistem operasi ARM 32-bit. Akibatnya, fungsionalitas seperti IntelliSense dan penelusuran kesalahan di Visual Studio Code pada perangkat ARM hanya didukung dalam sistem 64-bit.
Untuk alasan ini, sangat disarankan agar Anda membangun aplikasi di komputer pembangunan, lalu menyebarkan aplikasi ke perangkat untuk debugging jarak jauh. Jika Anda ingin mengembangkan dan men-debug secara lokal di perangkat, berikut ini diperlukan:
- OS 64-bit dengan lingkungan desktop, seperti Raspberry Pi OS (64-bit).
-
Visual Studio Code dengan ekstensi C#.
- Nonaktifkan akselerasi perangkat keras.
- .NET SDK 10 atau yang lebih baru.
- Instal menggunakan skrip dotnet-installsebagaimana dalam penyebaran yang bergantung pada framework. Pastikan untuk menambahkan
DOTNET_ROOTvariabel lingkungan dan menambahkan direktori .dotnet ke$PATH.
- Instal menggunakan skrip dotnet-installsebagaimana dalam penyebaran yang bergantung pada framework. Pastikan untuk menambahkan
Sisa artikel ini menjelaskan cara men-debug aplikasi .NET di komputer papan tunggal dari jarak jauh dari komputer pengembangan.
Debug dari Visual Studio Code (lintas platform)
Penelusuran kesalahan .NET pada komputer papan tunggal dari Visual Studio Code memerlukan langkah-langkah konfigurasi pada SBC dan dalam file launch.json proyek.
Mengaktifkan SSH pada SBC
SSH diperlukan untuk pemecahan masalah jarak jauh. Untuk mengaktifkan SSH pada Raspberry Pi, lihat Mengaktifkan SSH dalam dokumentasi Raspberry Pi. Pastikan Anda telah mengonfigurasi SSH tanpa kata sandi.
Penting
Contoh ini mengharuskan Anda untuk mengonfigurasi SSH tanpa kata sandi di perangkat Anda, karena OpenSSH tidak mendukung meneruskan kata sandi pada baris perintah. Jika Anda perlu menggunakan kata sandi, pertimbangkan untuk mengganti alat Plink untuk ssh.
Menginstal Visual Studio Remote Debugger di SBC
Dalam konsol Bash di SBC (baik dalam sesi lokal atau melalui SSH), jalankan perintah berikut. Perintah ini mengunduh dan menginstal Visual Studio Remote Debugger pada perangkat:
curl -sSL https://aka.ms/getvsdbgsh | /bin/sh /dev/stdin -v latest -l ~/vsdbg
Menyiapkan launch.json di Visual Studio Code
Pada komputer pemrograman, tambahkan konfigurasi peluncuran ke launch.json proyek. Jika proyek tidak memiliki file launch.json, tambahkan dengan beralih ke tab Run, memilih buat file launch.json, dan memilih .NET atau .NET Core dalam dialog.
Konfigurasi baru di launch.json akan terlihat mirip dengan salah satu hal berikut:
"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"
}
},
Perhatikan hal berikut:
-
programadalah file yang dapat dieksekusi yang dibuat olehdotnet publish. -
cwdadalah direktori kerja yang digunakan saat meluncurkan aplikasi di perangkat. -
pipeProgramadalah jalur ke klien SSH di komputer lokal. -
pipeArgsadalah parameter yang akan diteruskan ke klien SSH. Pastikan untuk menentukan parameter kata sandi, sertapipengguna dalam format<user>@<hostname>.
Menyebarkan aplikasi
Sebarkan aplikasi seperti yang dijelaskan dalam Deploy .NET apps to ARM single-board computers. Pastikan jalur penyebaran adalah jalur yang sama yang ditentukan dalam cwd parameter dalam konfigurasi launch.json .
Luncurkan debugger
Di Visual Studio Code, pada tab Run dan Debug, pilih konfigurasi yang Anda tambahkan ke launch.json dan pilih Mulai Debugging. Aplikasi ini diluncurkan pada perangkat. Debugger dapat digunakan untuk mengatur breakpoint, memeriksa variabel lokal, dan banyak lagi.
Debug dari Visual Studio di Windows
Visual Studio dapat men-debug aplikasi .NET di perangkat jarak jauh melalui SSH. Tidak diperlukan konfigurasi khusus pada perangkat. Untuk detail mengenai menggunakan Visual Studio untuk melakukan debug .NET dari jarak jauh, silakan lihat Remote debug .NET di Linux menggunakan SSH.
Pastikan untuk memilih proses dotnet jika Anda sedang melakukan debug penyebaran yang bergantung pada framework. Jika tidak, proses akan diberi nama yang sama dengan eksekutabel aplikasi.