Menyahpepijat program Go dengan teg binaan boleh menjadi satu cabaran, terutamanya apabila menggunakan Kod Visual Studio dan nyahpepijat Delve.
Soalan Asal:
Bolehkah penyahpepijat dikonfigurasikan untuk menggunakan teg binaan yang ditentukan semasa menyusun atur cara Go?
Jawapan:
Pemalam Go Kod Visual Studio kini menyokong kunci buildFlags dalam launch.json. Ini membolehkan pembangun menentukan teg binaan menggunakan format "-tags Tag".
Konfigurasi:
Tugas untuk Membina Binari dengan Teg:
<code class="json">{ "version": "0.1.0", "command": "bash", "isShellCommand": true, "args": [""], "showOutput": "always", "tasks": [ { "taskName": "buildBinWithTag", "command": "go", "args": ["build", "-o", "BinaryName", "-tags", "THISISATAG"], "isShellCommand": true } ] }</code>
Lancarkan Konfigurasi untuk Nyahpepijat:
<code class="json">{ "version": "0.2.0", "configurations": [ { "name": "DebugBinWithTag", "type": "go", "request": "launch", "mode": "exec", "remotePath": "", "port": 2345, "host": "127.0.0.1", "program": "${workspaceRoot}/BinaryName", "env": {}, "args": [], "showLog": true, "preLaunchTask": "buildBinWithTag" } ] }</code>
Contoh:
Menggunakan teg binaan " build THISISAFLAG" :
<code class="go">//+build THISISAFLAG package main</code>
Konfigurasi Pelancaran:
<code class="json">{ "version": "0.2.0", "configurations": [ { "name": "DebugWithTag", "type": "go", "request": "launch", "mode": "exec", ... "buildFlags": "-tags THISISAFLAG", ... } ] }</code>
Konfigurasi ini akan memastikan penyahpepijat menggunakan teg binaan yang ditentukan semasa penyusunan, membenarkan pelaksanaan dan penyahpepijatan Program Go dengan konfigurasi bergantung tag yang berbeza.
Atas ialah kandungan terperinci Bolehkah Penyahpepijat Kod Visual Studio Menggunakan Tag Binaan untuk Program Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!