Heim >Backend-Entwicklung >Golang >Wie kann das App Engine-Problem „Konflikte mit derselben aus GOPATH importierten Datei' gelöst werden?

Wie kann das App Engine-Problem „Konflikte mit derselben aus GOPATH importierten Datei' gelöst werden?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-12 19:41:10320Durchsuche

How to Resolve App Engine's

Appengine „Konflikt mit derselben aus GOPATH importierten Datei“-Problem:

Dieses Problem tritt auf, wenn Appengine Dateien aus dem Stammverzeichnis importiert (wo sich app.yaml befindet), was zu Konflikten mit expliziten Importen in Ihrem Code führt. Das Problem ergibt sich aus der Duplizierung von Importen.

Um dieses Problem zu lösen, haben Sie zwei Möglichkeiten:

1. Lassen Sie den Quell-Repository-Pfad in Importen weg:

  • Entfernen Sie den „Quell-Repository“-Teil der Importpfade. Anstatt beispielsweise „github.com/blah/blah“ zu importieren, importieren Sie „blah/blah“.
  • Dieser Ansatz beschränkt Ihren Code auf Appengine. Erwägen Sie daher die Verwendung von Build-Einschränkungen, um Dateien basierend darauf bedingt einzuschließen/auszuschließen die Zielumgebung (z. B. Build !appengine).

2. Trennen Sie Module und Abhängigkeiten in einem Projekt:

  • Entfernen Sie alle Unterordnerpakete aus dem Hauptprojekt (wo sich app.yaml befindet), um zu verhindern, dass Appengine sie scannt.
  • Verschieben Sie sie in ein separates Projekt (z. B. SampleIssueDeps), das kein Unterverzeichnis ist.
  • Dann importieren die Abhängigkeiten unter Verwendung ihres vollständigen Pfads. Importieren Sie beispielsweise „github.com/MarkHayden/SampleIssueDeps/lib1“.

Zusammenfassung: Für Unterordnerpakete in einem Appengine-Projekt können Sie entweder „source „Repository“ als Teil der Importpfade hinzufügen oder den gesamten Code in separate Projekte verschieben und sie wie externe Abhängigkeiten importieren. Dadurch vermeiden Sie Konflikte durch doppelte Importe.

Das obige ist der detaillierte Inhalt vonWie kann das App Engine-Problem „Konflikte mit derselben aus GOPATH importierten Datei' gelöst werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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