Heim > Backend-Entwicklung > Golang > Können Sie in Go alle Unterpakete unter einem einzigen Namespace importieren?

Können Sie in Go alle Unterpakete unter einem einzigen Namespace importieren?

Patricia Arquette
Freigeben: 2024-11-22 08:43:10
Original
225 Leute haben es durchsucht

Can You Import All Subpackages Under a Single Namespace in Go?

Unterpakete mit Go importieren

Bei der Arbeit mit Go-Modulen kann es vorkommen, dass Sie mehrere Unterpakete aus einem übergeordneten Verzeichnis importieren müssen. Der herkömmliche Ansatz besteht darin, jedes Unterpaket einzeln zu importieren, wie im Beispiel zu sehen:

package main

import "one/entities/bar/sub1"
import "one/entities/bar/sub2"

func main() {

}
Nach dem Login kopieren

Sie wünschen sich jedoch möglicherweise eine prägnantere Lösung, z. B. den Import aller Unterpakete unter einem einzigen Namensraum. Dies ist in Go nicht direkt möglich, da die Importsyntax eine explizite Angabe von Paketnamen oder -pfaden erfordert.

// Invalid Syntax:
import bar "one/entities/bar/*"
Nach dem Login kopieren

Die Importanweisung von Go erfordert einen bestimmten Paketnamen oder -pfad, um die Quelle importierter Elemente zu bestimmen. Daher werden Wildcard-Importe in der Sprache nicht unterstützt.

Letztendlich besteht die praktikabelste Option darin, jedes erforderliche Unterpaket manuell zu importieren:

package main

import (
    "log"
    "one/entities/bar/sub1"
    "one/entities/bar/sub2"
)

func main() {

    v := sub1.GetVar()
    log.Fatal(v)

}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonKönnen Sie in Go alle Unterpakete unter einem einzigen Namespace importieren?. 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