Heim >Backend-Entwicklung >Golang >Wie installiere ich Go Tools mit Go-Modulen, ohne go.mod zu ändern?

Wie installiere ich Go Tools mit Go-Modulen, ohne go.mod zu ändern?

Barbara Streisand
Barbara StreisandOriginal
2024-11-30 08:22:12357Durchsuche

How to Install Go Tools with Go Modules Without Modifying go.mod?

Installieren von Go-Tools mit Go-Modulen

Bei Verwendung von Go-Modulen für das Abhängigkeitsmanagement kann der Versuch, ein Tool zu installieren, zu einem Fehler führen, wenn nein Das Hauptmodul wurde gefunden.

Um dieses Problem zu beheben, beachten Sie Folgendes Szenarien:

Szenario 1: Tools installieren, ohne go.mod zu ändern

Wenn Sie das Tool nicht als Abhängigkeit in Ihrem aktuellen Modul verfolgen möchten, finden Sie hier die folgenden Szenarien zwei Möglichkeiten:

  • Wechseln Sie in ein Verzeichnis ohne go.mod:
$ cd /tmp
$ go get github.com/some/[email protected]
  • Verwenden Sie gobin, einen modulbewussten Befehl, mit dem Sie Binärdateien installieren und ausführen können, ohne Ihren go.mod:
$ go install golang.org/x/tools/cmd/stringer

Szenario 2: Tools als Abhängigkeiten verfolgen in go.mod

Um ein Tool explizit als Abhängigkeit in Ihrem go.mod zu verfolgen:

    Erstellen Sie eine tools.go-Datei in einem separaten Paket mit einem //go :build tools build tag:
//go:build tools
// +build tools

package tools

import (
    _ "golang.org/x/tools/cmd/stringer"
)
    Die Importanweisungen ermöglichen es dem Befehl go, die Versionsinformationen des Tools in Ihrem aufzuzeichnen go.mod, während die Build-Einschränkung sicherstellt, dass die Tools nicht während regulärer Builds importiert werden.

Das obige ist der detaillierte Inhalt vonWie installiere ich Go Tools mit Go-Modulen, ohne go.mod zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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