Cara Membuka launch.json dalam Kod VS

64

Penyahpepijatan dan kualiti kod yang berkesan adalah konsep yang tidak dapat dipisahkan dalam pembangunan perisian. Fungsi penyahpepijatan Kod Visual Studio (VS) dikawal terutamanya oleh fail launch.json. Fail ini membolehkan pembangun mengkonfigurasi dan mengurus tetapan penyahpepijatan mereka mengikut penglihatan mereka.

Cara Membuka launch.json dalam Kod VS

Artikel ini akan membimbing anda membuka dan mengurus fail launch.json untuk penyahpepijatan optimum.

Membuka launch.json dalam Kod Visual Studio

Untuk mengkonfigurasi dan mengurus tetapan penyahpepijatan Kod VS, anda memerlukan akses kepada fail launch.json. Fail ini memainkan peranan penting dalam penyesuaian nyahpepijat.

  1. Buka Kod Visual Studio.
  2. Tekan Ctrl + Shift + P untuk membuka Palet Perintah.
  3. Taip “Open launch.json” dalam Palet Perintah dan tekan “Enter.” Ini sepatutnya membuka fail launch.json untuk anda.
  4. Jika fail launch.json tidak dibuka, sahkan bahawa folder “.vscode” wujud dalam folder akar projek anda.
  5. Jika ia tidak wujud, buat folder baharu yang dipanggil “.vscode” dalam folder Pengguna anda.
  6. Buat fail “launch.json” baharu dan letakkan dalam folder ini.

Fail launch.json akan sedia untuk dikonfigurasikan selepas mendayakannya.

Gambaran Keseluruhan Struktur Launch.json

launch.json memaparkan bahagian “versi” dan “konfigurasi”. Bahagian “konfigurasi” ialah tatasusunan yang mengandungi pilihan penyahpepijatan yang berbeza, yang akan anda gunakan untuk mengkonfigurasi skema penyahpepijatan anda.

Setiap objek dalam tatasusunan “konfigurasi” mewakili senario penyahpepijatan. Objek ini mempunyai sifat yang mentakrifkan persekitaran penyahpepijatan, seperti tetapan bahasa, program dan penyahpepijat.

Beberapa sifat biasa yang anda akan temui dalam konfigurasi launch.json termasuk:

  • “nama” – Nama mesra pembaca untuk konfigurasi untuk mengenal pastinya dalam menu lungsur turun.
  • “jenis” – Menentukan jenis penyahpepijat (seperti “nod,” “python” atau “cppvsdbg”).
  • “permintaan” – Menentukan jenis permintaan, sama ada “pelancaran” (untuk memulakan kejadian baharu) atau “lampirkan” (untuk melampirkan penyahpepijat pada proses sedia ada).
  • “program” – Laluan fail untuk fail yang ingin anda nyahpepijat.
  • “args” – Satu susunan argumen baris perintah untuk dihantar ke program semasa penyahpepijatan.
  • “preLaunchTask” – Tugas untuk dijalankan sebelum memulakan penyahpepijat.

Memahami struktur fail launch.json membolehkan anda mengetahui pilihan yang hendak diubah dan yang harus ditinggalkan semasa menyesuaikan persekitaran penyahpepijatan anda.

Mengkonfigurasi Tetapan Pelancaran untuk Bahasa Berbeza

Langkah-langkah untuk mengkonfigurasi tetapan pelancaran boleh berbeza sedikit bergantung pada bahasa. Berikut ialah langkah-langkah untuk beberapa bahasa popular.

JavaScript dan TypeScript

  1. Buat fail launch.json baharu dan konfigurasikan sifat “type” sebagai “nod” untuk JavaScript atau “pwa-node” untuk TypeScript.
  2. Tetapkan sifat “permintaan” kepada “pelancaran” atau “lampirkan”.
  3. Anda harus menentukan fail titik masuk menggunakan sifat “program”.

Ular sawa

  1. Pasang penterjemah dan sambungan Python untuk Kod Visual Studio.
  2. Tetapkan sifat “jenis” kepada “python” dalam fail launch.json baharu.
  3. Konfigurasikan sifat “permintaan” sebagai “pelancaran” atau “lampirkan”.
  4. Tentukan fail Python untuk dijalankan menggunakan sifat “program”.
  5. Anda mungkin perlu menetapkan sifat “pythonPath” tambahan kepada laluan penterjemah Python jika ia tidak berada di lokasi lalai.

C# dan .NET Core

  1. Pasang sambungan C# untuk Kod Visual Studio.
  2. Dalam fail launch.json baharu, tetapkan sifat “jenis” kepada “coreclr” untuk Teras .NET atau “clr” untuk Rangka Kerja .NET.
  3. Konfigurasikan sifat “permintaan” sebagai “pelancaran” atau “lampirkan”.
  4. Tentukan fail titik masuk menggunakan sifat “program”.
  5. Tetapkan sifat “cwd” kepada direktori kerja projek semasa jika perlu.

Jawa

  1. Pasang Pek Sambungan Java.
  2. Buat fail launch.json baharu dan tetapkan sifat “jenis” kepada “java.”
  3. Konfigurasikan sifat “permintaan” sebagai “pelancaran” atau “lampirkan”.
  4. Tentukan kelas utama dengan sifat “mainClass”.
  5. Tetapkan sifat “projectName” kepada nama projek Java anda.
  6. Konfigurasikan sifat “classpath” untuk memasukkan perpustakaan Java yang akan anda gunakan semasa pembangunan Java anda.

Resipi Konfigurasi Penyahpepijatan

Bahagian berikut merangkumi pelbagai resipi konfigurasi penyahpepijatan.

Melampirkan Debugger pada Proses Berjalan

Untuk melampirkan penyahpepijat pada proses yang sedang berjalan:

  • Tetapkan sifat “permintaan” kepada “lampirkan.”
  • Pilih ID proses atau penapis untuk mencari proses untuk nyahpepijat.

Penyahpepijatan Aplikasi Jauh

Untuk penyahpepijatan aplikasi jauh:

  • Gunakan jenis “jauh”.
  • Sediakan alamat hos, port, dan mungkin maklumat pengesahan untuk mewujudkan sambungan.

Ujian Unit Penyahpepijatan dan Suite Ujian

Apabila menyahpepijat ujian unit dan suite ujian:

  • Gunakan konfigurasi yang merangkumi rangka kerja dan tetapan ujian untuk menyahpepijat ujian unit dan suite ujian.
  • Tentukan suite ujian atau fail ujian individu dalam sifat “program” atau “args” untuk menyasarkan ujian tertentu.

Melepasi Pembolehubah Persekitaran

Sifat “env” dalam launch.json boleh menghantar pembolehubah persekitaran kepada aplikasi anda semasa menyahpepijat. Sifat ini ialah objek yang mengandungi pasangan nilai kunci untuk pembolehubah persekitaran yang anda ingin tetapkan.

Penyahpepijatan Lanjutan

Mari kita terokai beberapa teknik penyahpepijatan lanjutan untuk pengguna yang ingin memerah lebih sedikit kuasa daripada fail nyahpepijat.

Titik Putus Bersyarat dan Titik Log

Titik putus dan titik log bersyarat menambah baik penyahpepijatan dengan menjeda atau mengelog mesej hanya dalam keadaan tertentu. Untuk menggunakannya:

  • Klik kanan pada nombor baris di mana anda ingin menetapkan titik putus atau titik log.
  • Pilih “Tambah Titik Putus Bersyarat” atau “Tambah Titik Log.”
  • Masukkan syarat atau mesej untuk mencetuskan tindakan.

Peta Sumber

Peta sumber membolehkan anda menyahpepijat kod yang telah diubah atau dikecilkan.

  • Tetapkan sifat “sourceMap” kepada “true” dalam konfigurasi launch.json anda untuk menggunakan peta sumber.
  • Pastikan proses binaan anda menjana peta sumber dan kod yang diubah.

Mengintegrasikan Penyahpepijat Luaran

Anda boleh menyepadukan penyahpepijat luaran dan alatan, seperti gdb atau lldb, ke dalam Kod VS jika anda mahu.

  • Pasang pelanjutan penyahpepijat pilihan.
  • Konfigurasikan tetapan penyahpepijat dalam fail launch.json.

Menyahpepijat Aplikasi Berbilang Benang

Apabila menyahpepijat aplikasi berbilang benang, anda boleh mengawal pelaksanaan utas individu.

  • Gunakan paparan “benang” dalam bar sisi Nyahpepijat untuk mengurus utas semasa sesi nyahpepijat.
  • Anda boleh menjeda, menyambung semula atau melangkah melalui pelaksanaan kod untuk setiap urutan secara berasingan.

Penyahpepijatan Berbilang Sasaran

Konfigurasi pelancaran kompaun membolehkan penyahpepijatan berbilang sasaran serentak. Jika anda ingin memanfaatkan ciri ini, tambahkan tatasusunan “sebatian” dengan nama konfigurasi untuk dikumpulkan bersama. Jalankannya dengan memilih nama konfigurasi kompaun daripada menu lungsur Nyahpepijat.

Konfigurasikan berbilang konfigurasi pelancaran yang menyasarkan perkhidmatan, fungsi atau titik akhir yang berbeza untuk menyahpepijat perkhidmatan mikro dan aplikasi tanpa pelayan. Gunakan konfigurasi pelancaran kompaun untuk menjalankan sasaran ini bersama-sama.

Untuk ruang kerja berbilang akar, cipta fail launch.json yang berasingan untuk setiap folder. Konfigurasikan tetapan pelancaran untuk setiap folder akar secara individu untuk menyahpepijat projek secara berasingan atau serentak menggunakan sebatian.

Menyelesaikan masalah Isu common launch.json

Kadangkala, penyahpepijatan terdedah kepada set pepijatnya sendiri. Mari lihat beberapa isu biasa dan cara menyelesaikannya.

Ralat Pengesahan Skema

Ralat pengesahan skema berlaku apabila fail launch.json mempunyai sifat atau nilai yang tidak sah. Untuk membetulkan ralat skema:

  • Semak mesej ralat daripada panel Masalah.
  • Kemas kini fail launch.json mengikut maklumat daripada mesej ralat.

Kegagalan Penyahpepijatan

Tetapan pelancaran yang salah boleh menyebabkan kegagalan penyahpepijatan.

  • Semak konfigurasi pelancaran anda untuk mencari laluan fail yang salah.
  • Sahkan hilang atau salah penyahpepijat atau jenis permintaan.
  • Kemas kini tetapan seperti yang diperlukan.

Mendiagnosis Isu Konfigurasi Pelancaran

Untuk mendiagnosis isu dengan konfigurasi pelancaran:

  • Dayakan pengelogan diagnostik dengan menetapkan sifat “jejak” kepada “verbose”.
  • Semak log yang dijana dalam Konsol Nyahpepijat untuk mengenal pasti dan menyelesaikan sebarang masalah.

Petua untuk launch.json

Gunakan launch.json secara optimum dengan petua ini:

  • Gunakan nama yang bermakna untuk konfigurasi pelancaran anda untuk menjadikannya mudah dikenal pasti. Amalan ini membantu anda mencari konfigurasi yang sesuai dengan cepat apabila bekerja dengan berbilang senario penyahpepijatan.
  • Kongsi konfigurasi pelancaran dengan pasukan anda dengan memasukkan fail launch.json dalam sistem kawalan versi projek anda. Setiap ahli pasukan boleh mengakses konfigurasi dan tetapan penyahpepijatan yang sama.
  • Sistem kawalan versi seperti Git boleh menjejaki perubahan pada fail launch.json anda. Anda boleh menggunakan kawalan versi untuk kembali kepada konfigurasi sebelumnya dan bekerjasama dengan ahli pasukan lain dengan berkongsi tetapan yang disyorkan dengan mereka.
  • Pasang sambungan yang menyokong bahasa, penyahpepijat atau alatan tertentu yang sesuai dengan permintaan projek. Konfigurasikan fail launch.json untuk menggunakan sambungan ini dan cirinya semasa sesi penyahpepijatan.

Lancarkan Ke Penyahpepijatan

Dengan memanfaatkan kuasa launch.json, anda boleh melaraskan pengalaman penyahpepijatan anda agar sepadan dengan gaya pengekodan anda dengan terbaik. Ini akan meningkatkan kualiti dan prestasi kod anda.

Berapa kerap anda perlu mengkonfigurasi tetapan pelancaran anda? Adakah anda mempunyai sebarang petua konfigurasi? Sila kongsikan pengalaman anda di ruangan komen di bawah.