Maison >développement back-end >Golang >Comment créer plusieurs binaires Go simultanément ?
Création simultanée de plusieurs binaires de packages
Selon votre demande, la création simultanée de plusieurs binaires de packages peut être réalisée en créant un "cmd" de niveau supérieur " structure de dossiers, qui a été suggérée ailleurs. Cependant, vous avez rencontré des difficultés avec cette approche.
Pour créer des fichiers binaires individuels à l'aide d'une structure de dossiers « cmd » :
Assurez-vous que vous disposez de la structure de fichiers suivante (comme selon votre exemple de travail) :
├── cmd │ ├── bin1 │ │ └── main.go │ ├── bin2 │ │ └── main.go ├── src │ ├── shared │ │ ├── foo │ │ │ └── foo.go
Exécutez la commande suivante pour chaque binaire que vous souhaitez construire, en remplaçant "< nom-binaire>" avec le nom binaire souhaité :
go build -o "<binary-name>" ./cmd/<binary-name>
Par exemple :
go build -o bin1 ./cmd/bin1 go build -o bin2 ./cmd/bin2
Cela créera les binaires "bin1" et "bin2" dans le répertoire racine du projet .
Approche alternative utilisant un script
Si vous préférez ne pas installer les binaires dans $GOPATH/bin, vous pouvez créer un script de build qui itère sur les packages et construit chaque binaire individuellement.
Créez un script nommé "build-all.sh" avec le contenu suivant :
<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>
Créez le exécutable du script :
<code class="sh">chmod +x build-all.sh</code>
Exécutez le script pour créer tous les binaires en une seule étape :
<code class="sh">./build-all.sh</code>
Cette approche offre flexibilité et contrôle sur le processus de construction binaire et imite ce que de nombreux projets open source utilisent.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!