So importieren Sie Unterpakete in Go: Was tun, wenn die Fehlermeldung „No Go Files' angezeigt wird?

DDD
Freigeben: 2024-11-18 19:29:02
Original
240 Leute haben es durchsucht

How to Import Subpackages in Go:  What to Do When You Get the

Unterpakete mit Go importieren: Behebung des Fehlers „No Go-Dateien“

In Go ist das Importieren von Unterpaketen durch Verweis auf ihr übergeordnetes Verzeichnis nicht direkt möglich unterstützt. Es gibt jedoch alternative Ansätze zur Behebung der häufigen Fehlermeldung „Keine Go-Dateien im [übergeordneten Verzeichnis]“.

Stellen Sie sich das folgende Szenario vor:

package main

import "one/entities/bar"

func main() {

}
Nach dem Login kopieren

Mit dieser Verzeichnisstruktur:

- one
   - entities
      - bar
         - file.go
Nach dem Login kopieren

Beim Versuch, das Projekt mit go install main zu erstellen, tritt ein Fehler auf, der darauf hinweist, dass im Unterpaketverzeichnis keine Go-Dateien vorhanden sind. Um dieses Problem zu beheben, können Sie Unterpakete nicht mit einer Platzhaltersyntax importieren, da die Importanweisung einen expliziten Paketnamen oder -pfad erfordert.

Um Unterpakete korrekt zu importieren, sollten Sie jedes Unterpaket einzeln importieren. Um beispielsweise das bar-Unterpaket zu importieren, würden Sie die Datei main.go wie folgt ändern:

package main

import (
    "one/entities/bar/file1"
    "one/entities/bar/file2"
)

func main() {

}
Nach dem Login kopieren

Alternativ können Sie einen benutzerdefinierten Importpfad verwenden, um verwandte Unterpakete unter einer einzigen Importanweisung zu gruppieren. Dies kann die Lesbarkeit verbessern und die Anzahl der Importzeilen reduzieren. Um dies zu erreichen, erstellen Sie ein Verzeichnis mit dem Namen import im Verzeichnis one/entities und platzieren Sie darin eine Datei mit dem Namen init.go. Definieren Sie in der init.go-Datei einen benutzerdefinierten Importpfad und importieren Sie die gewünschten Unterpakete:

// import/init.go
package entities

import (
    _ "one/entities/bar/file1"
    _ "one/entities/bar/file2"
)
Nach dem Login kopieren

Importieren Sie dann in Ihrer main.go-Datei das Entities-Paket mithilfe des benutzerdefinierten Importpfads:

// main.go
package main

import (
    "log"
    "one/entities"
)

func main() {
    v := entities.Bar_file1.Get.Basic.Req.Headers{}
    log.Fatal(v)
}
Nach dem Login kopieren

Wenn Sie diese Ansätze befolgen, können Sie Unterpakete ordnungsgemäß in Go importieren, den Fehler „Keine Go-Dateien“ beheben und Ihre Importe für besseren Code organisieren Lesbarkeit.

Das obige ist der detaillierte Inhalt vonSo importieren Sie Unterpakete in Go: Was tun, wenn die Fehlermeldung „No Go Files' angezeigt wird?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage