Définition des variables de package à l'aide de -ldflags -X dans Golang Build
Lors de la création d'applications Go à l'aide de la commande go build, les développeurs peuvent définir des variables de package en utilisant les options -ldflags -X. Cette technique est couramment utilisée pour injecter des chaînes de version, des valeurs de configuration ou d'autres métadonnées dans le binaire compilé.
Cependant, la question se pose de savoir s'il est possible de définir des variables de package dans un package spécifique, plutôt que dans le package principal. Voici comment cela peut être réalisé :
La documentation de l'indicateur -X indique explicitement :
-X importpath.name=value Set the value of the string variable in importpath named name to value.
Cela indique que l'indicateur -X peut être utilisé avec n'importe quel package, pas seulement le package principal emballer. Pour spécifier une variable de package, fournissez simplement le chemin d'importation complet (de la même manière que vous importeriez le package dans votre code).
Par exemple, si votre package de configuration se trouve dans $GOPATH/src/my/package /config, vous pouvez définir la variable Version dans ce package à l'aide de la commande suivante :
go build -ldflags "-X my/package/config.Version=1.0.0" -o $(MY_BIN) $(MY_SRC)
Cela définira la variable Version dans le package de configuration, même si la commande build est exécutée dans le fichier principal. paquet.
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!