Mengekstrak Versi Modul daripada Go Executables
Dalam Go boleh laku binari, alat Go membenamkan modul dan maklumat pergantungan. Maklumat ini boleh diakses menggunakan fungsi runtime/debug.ReadBuildInfo().
Masalah
Anda perlu memaparkan versi modul yang digunakan dalam boleh laku Go anda, tetapi anda bergelut dengan pelaksanaannya. Anda telah mempertimbangkan untuk menggunakan ldflags, tetapi ia tidak boleh berskala.
Penyelesaian
Nyahpepijat.ReadBuildInfo() mengembalikan senarai contoh nyahpepijat.Modul, yang menyediakan perkara berikut maklumat:
Contoh Kod
Kod berikut menunjukkan cara menggunakan ReadBuildInfo() untuk mendapatkan semula versi modul:
<code class="go">package main import ( "fmt" "runtime/debug" ) func main() { bi, ok := debug.ReadBuildInfo() if !ok { // Handle failure } for _, dep := range bi.Deps { fmt.Printf("Dependency: %s, Version: %s\n", dep.Path, dep.Version) } }</code>
Contoh ini akan keluarkan laluan dan versi semua kebergantungan yang digunakan oleh boleh laku.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mengekstrak versi modul daripada boleh laku Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!