Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Membina Multiple Go Binaries Serentak?
Membina Berbilang Perduaan Pakej Secara Serentak
Mengikut pertanyaan anda, membina berbilang pakej binari secara serentak boleh dicapai dengan mencipta "cmd" peringkat atas " struktur folder, yang telah dicadangkan di tempat lain. Walau bagaimanapun, anda telah menghadapi cabaran dengan pendekatan ini.
Untuk membina binari individu menggunakan struktur folder "cmd":
Pastikan anda mempunyai struktur fail berikut (seperti mengikut contoh kerja anda):
├── cmd │ ├── bin1 │ │ └── main.go │ ├── bin2 │ │ └── main.go ├── src │ ├── shared │ │ ├── foo │ │ │ └── foo.go
Laksanakan arahan berikut untuk setiap binari yang anda ingin bina, menggantikan "< nama-perduaan>" dengan nama binari yang dikehendaki:
go build -o "<binary-name>" ./cmd/<binary-name>
Contohnya:
go build -o bin1 ./cmd/bin1 go build -o bin2 ./cmd/bin2
Ini akan mencipta binari "bin1" dan "bin2" dalam direktori akar projek .
Pendekatan Alternatif Menggunakan Skrip
Jika anda memilih untuk tidak memasang binari ke dalam $GOPATH/bin, anda boleh mencipta skrip binaan yang berulang pada pakej dan membina setiap binari secara individu.
Buat skrip bernama "build-all.sh" dengan kandungan berikut:
<code class="sh">#!/bin/bash # Iterate over the packages in the "cmd" directory for CMD in `ls cmd`; do # Build the binary for each package go build -o $CMD ./cmd/$CMD done</code>
Buat skrip boleh laku:
<code class="sh">chmod +x build-all.sh</code>
Jalankan skrip untuk membina semua binari dalam satu langkah:
<code class="sh">./build-all.sh</code>
Pendekatan ini menyediakan fleksibiliti dan kawalan sepanjang proses binari binari dan meniru perkara yang digunakan oleh banyak projek sumber terbuka.
Atas ialah kandungan terperinci Bagaimana untuk Membina Multiple Go Binaries Serentak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!