Heim >Backend-Entwicklung >Golang >Können mehrere Go-Pakete in einem einzigen Verzeichnis koexistieren?
Verwaltung mehrerer Pakete im selben Verzeichnis
Frage:
Ist die Wartung sinnvoll? zwei Pakete in einem einzigen Verzeichnis?
Hintergrund:
In einem Szenario, in dem ein Projekt sowohl eine Bibliothek als auch eine Befehlszeilenschnittstelle (CLI) umfasst, stellt sich die Frage, ob dies sinnvoll ist Strukturieren Sie sie als separate Pakete im selben Verzeichnis. Die Sorge rührt von möglichen Konflikten beim Kompilieren des Projekts her, da die Paket-Main- und Func-Main-Deklarationen für die Ausführung der CLI unerlässlich sind, aber mit der für die Bibliothek erforderlichen Paket-MyProject-Deklaration in Konflikt stehen.
Antwort:
Um dieses Problem zu beheben, wird empfohlen, einen neuen Unterordner im Hauptverzeichnis zu erstellen und entweder die Bibliothek oder die CLI in den neuen Ordner zu verschieben. Dies stellt die Isolation zwischen den beiden Paketen sicher und vermeidet Namenskonflikte.
Lösung:
Beispiel:
Überlegen die folgende Beispielstruktur:
whatever.io/ myproject/ main.go lib/ myproject.go
In diesem Fall wurde die Bibliothek myproject in die lib verschoben Unterordner. Die main.go-Datei kann nun die Bibliothek importieren mit:
import "../lib/myproject"
Dieser Ansatz bewahrt die Organisation des Projekts und löst gleichzeitig den Kompilierungskonflikt.
Zusätzliche Ressourcen:
Das obige ist der detaillierte Inhalt vonKönnen mehrere Go-Pakete in einem einzigen Verzeichnis koexistieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!