Heim > Backend-Entwicklung > Golang > Wie kann ich ein Go-Paket ohne Importfehler über mehrere Verzeichnisse hinweg organisieren?

Wie kann ich ein Go-Paket ohne Importfehler über mehrere Verzeichnisse hinweg organisieren?

Barbara Streisand
Freigeben: 2024-12-31 17:11:18
Original
874 Leute haben es durchsucht

How Can I Organize a Go Package Across Multiple Directories Without Import Errors?

Mehrere Quellverzeichnisse für Go-Pakete

In Go kann die Entwicklung eines Pakets mit mehreren Quellverzeichnissen eine Herausforderung sein, insbesondere wenn Sie organisieren möchten Ihre Codestruktur, während der Import für Benutzer einfach bleibt.

Obwohl es natürlich erscheinen mag, denselben Paketnamen in mehreren Quelldateien in verschiedenen Verzeichnissen zu deklarieren, ist dieser Ansatz hilfreich wird nicht empfohlen. Gemäß der Go-Sprachspezifikation erfordern Implementierungen möglicherweise, dass sich alle Quelldateien für ein Paket im selben Verzeichnis befinden. Der Versuch, mehrere Verzeichnisse aus demselben Paket zu importieren, führt zu einem Fehler:

error: redefinition of ‘mypackage’
Nach dem Login kopieren

Anstatt mehrere Quellverzeichnisse zu deklarieren, bietet Go mehrere Alternativen:

  1. Dateinamen umbenennen: Strukturieren Sie Ihre Dateinamen, um die Ordnerhierarchie nachzuahmen. Anstelle von:

    foo/foo1.go
    foo/bar/bar1.go
    foo/bar/bar2.go
    Nach dem Login kopieren

    Verwenden Sie:

    foo/foo1.go
    foo/bar-bar1.go
    foo/bar-bar2.go
    Nach dem Login kopieren
  2. Erwägen Sie die Aufteilung von Paketen: Wenn Ihr Paket zu groß wird, sollten Sie es in mehrere kleinere aufteilen Pakete. Dies kann die Abhängigkeitskomplexität und die Wartbarkeit verringern.
  3. Interne Pakete: Interne Pakete wurden in Go 1.5 eingeführt und ermöglichen es Ihnen, verwandte Dateien innerhalb eines Unterverzeichnisses zu gruppieren, ohne sie außerhalb Ihres Pakets zugänglich zu machen. Dies kann dabei helfen, Ihre Codebasis zu organisieren und die Sichtbarkeit zu kontrollieren.

Zusammenfassend lässt sich sagen, dass es nicht ratsam ist, ein Go-Paket über mehrere Quellverzeichnisse hinweg zu entwickeln. Zu den empfohlenen Ansätzen gehören das Umbenennen von Dateinamen, das Aufteilen von Paketen oder die Verwendung interner Pakete. Mit diesen Alternativen können Sie Ihren Code effektiv organisieren und gleichzeitig den ordnungsgemäßen Paketimport und die Sichtbarkeit sicherstellen.

Das obige ist der detaillierte Inhalt vonWie kann ich ein Go-Paket ohne Importfehler über mehrere Verzeichnisse hinweg organisieren?. 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