Heim > Backend-Entwicklung > Golang > Kann Gos „-ldflags -X' anderen Paketen als „main' Variablen zuweisen?

Kann Gos „-ldflags -X' anderen Paketen als „main' Variablen zuweisen?

Mary-Kate Olsen
Freigeben: 2024-12-16 08:00:23
Original
711 Leute haben es durchsucht

Can Go's `-ldflags -X` Assign Variables to Packages Other Than `main`?

Paketvariablenzuweisung mit -ldflags -X in Go Build

Problem:

Beim Erstellen einer Go-Anwendung ist Es ist möglich, mit -ldflags -X einem anderen Paket als dem Hauptpaket eine Versionszeichenfolgenvariable zuzuweisen Optionen?

Lösung:

Ja, es ist möglich, eine Variable in jedem Paket mit -ldflags -X festzulegen. Es erfordert jedoch die Angabe des vollständigen Importpfads des Pakets und nicht nur des Paketnamens.

Um dies zu erreichen, verwenden Sie die folgende Syntax:

-X importpath.package.variable=value
Nach dem Login kopieren

Zum Beispiel, wenn das Konfigurationspaket sich unter $GOPATH/src/my/package/config befindet, verwenden Sie den folgenden Build-Befehl:

go build -ldflags "-X my/package/config.Version=1.0.0" -o $(MY_BIN) $(MY_SRC)
Nach dem Login kopieren

Dieser Befehl weist den Wert 1.0.0 zu zur Versionsvariablen im Konfigurationspaket.

Das obige ist der detaillierte Inhalt vonKann Gos „-ldflags -X' anderen Paketen als „main' Variablen zuweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage