Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Membina Perpustakaan dan Binari Go dengan Nama Yang Sama?

Bagaimanakah Saya Boleh Membina Perpustakaan dan Binari Go dengan Nama Yang Sama?

Mary-Kate Olsen
Lepaskan: 2024-11-29 09:45:11
asal
595 orang telah melayarinya

How Can I Build a Go Library and Binary with the Same Name?

Perpustakaan dan Binari dengan Nama Yang Sama

Cabaran biasa timbul apabila mereka bentuk perpustakaan yang juga boleh berfungsi sebagai binari kendiri. Walaupun nampaknya logik untuk menamakan perpustakaan dan binari secara identik, sistem binaan Golang sering memberikan nama yang berbeza.

Satu penyelesaian melibatkan pengasingan struktur direktori ke dalam direktori tar untuk perpustakaan dan direktori tarbin untuk binari. Walau bagaimanapun, pendekatan ini mencipta binari yang dipanggil tarbin dan bukannya tar.

Penyelesaian yang lebih elegan adalah dengan meletakkan binari dalam direktori perpustakaan:

src/
    tar/
        tar.go         # tar library
        tar/
            main.go    # tar binary
Salin selepas log masuk

Struktur ini menghasilkan binari bernama tar dan perpustakaan bernama tar.

Dalam konteks GitHub, struktur direktori menjadi:

src/
    github.com/
        you/
            tar/
                tar.go         # tar library
                tar/
                    main.go    # tar binary
Salin selepas log masuk

Struktur ini membolehkan pemasangan mudah kedua-dua binari (pergi dapatkan install github.com/you/tar/tar) dan perpustakaan (pergi dapatkan install github.com/you/tar) .

Bergantung pada penonjolan yang diingini, perpustakaan dan binari boleh ditukar dalam struktur direktori. Selain itu, menyimpan semua kod dalam satu pokok membolehkan pembinaan dan ujian yang mudah:

go install ./...
go test|fmt ./...
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membina Perpustakaan dan Binari Go dengan Nama Yang Sama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan