Heim >Backend-Entwicklung >Golang >Wie greife ich in einer überarbeiteten Go-Projektstruktur über verschiedene Verzeichnisse hinweg auf Module zu?
Zugriff auf Module in einer überarbeiteten Golang-Projektstruktur
Seit Go Version 1.11 hat sich die Modulverwaltung erheblich geändert. Um zu verstehen, wie Sie auf ein Modul aus einem anderen Verzeichnis in der neuen Projektstruktur verweisen, sehen wir uns Ihre Ordnereinrichtung an:
\root\module1 \root\module2
Jedes Verzeichnis enthält eine go.mod-Datei, und Sie können erfolgreich auf diese Module zugreifen Stammverzeichnis. Um jedoch von Modul1 aus auf Modul2 zuzugreifen, befolgen Sie diese Schritte:
ALTER WEG
Beim herkömmlichen Ansatz müssen Module in der Umgebungsvariablen GOPATH platziert werden, damit darauf zugegriffen werden kann. Der GOPATH-Ordner hat normalerweise die folgende Struktur:
$GOPATH ├── bin ├── pkg └── src ├── github.com └── other_imported_modules
Sie können eine Datenstrukturdatei mit dem Namen datastructures.go aus Modul2 in Modul1 importieren, indem Sie die Importanweisung verwenden:
import ( "github.ibm.com/Alessio-Savi/GoLog-Viewer/datastructure" )
NEUER WEG
Der moderne Ansatz zur Modulverwaltung beinhaltet die Verwendung des Go-Mod-Init Befehl:
go mod init github.com/username/modulename
Dies generiert go.mod- und go.sum-Dateien. Die Datei go.mod enthält Abhängigkeiten, während go.sum deren Hashes speichert. Beispielsweise könnte Ihre go.mod-Datei für Modul2 wie folgt aussehen:
module github.com/username/module2 go 1.13 require ( github.com/alessiosavi/ahocorasick v0.0.3 )
Jetzt können Sie Modul2 in Modul1 importieren:
import ( "github.com/username/module2" )
Mit dieser Methode können Sie auf Ihre Module ohne zugreifen Sie müssen sie veröffentlichen oder im GOPATH platzieren.
Das obige ist der detaillierte Inhalt vonWie greife ich in einer überarbeiteten Go-Projektstruktur über verschiedene Verzeichnisse hinweg auf Module zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!