Teilen eines Namens zwischen Bibliotheken und Binärdateien in Go
Beim Erstellen eines Softwarepakets wünschen Sie sich möglicherweise eine Bibliothek und eine eigenständige Binärdatei mit dem gleichen Namen. Dies kann für Tools wie tar nützlich sein, das sowohl als Befehl als auch als Bibliothek verwendet wird.
Zunächst könnten Sie eine einfache Verzeichnisstruktur versuchen:
src/ tar/ tar.go # belongs to package tar main.go # imports tar and provides a main function
Dieser Ansatz führt jedoch in eine Binärdatei mit dem Namen „tarbin“ anstelle von „tar“. Um dieses Problem zu beheben, empfiehlt die Go-Dokumentation, den Befehl und die Bibliothek in verschiedene Verzeichnisse zu trennen:
src/ tar/ tar.go # belongs to package tar tarbin/ main.go # imports tar and provides a main function
Während dies einen Befehl namens „tar“ erzeugt, heißt die Bibliothek jetzt „tarbin“.
Eine elegantere Lösung besteht darin, die Binärdatei im Bibliotheksverzeichnis zu verschachteln:
src/ tar/ tar.go # tar library tar/ main.go # tar binary
Diese Struktur stellt sowohl eine Binärdatei mit dem Namen „tar“ als auch eine Bibliothek mit dem Namen bereit „tar.“
Abhängig von Ihren Prioritäten können Sie die Positionen der Bibliothek und der Binärdatei innerhalb der verschachtelten Struktur vertauschen.
Die Einbettung des gesamten Codes in einen einzigen Baum bietet Vorteile, wie z Führen Sie go install ./... aus dem Stammverzeichnis aus, um alle Pakete und Unterpakete zu erstellen.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Go-Binärdatei und eine Go-Bibliothek mit demselben Namen erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!