[Go 1.13] Was tun, wenn ein unerwartetes Verzeichnislayout angezeigt wird?


 Ich denke das wird funktionieren.

---

 Ein Fehler, der auftrat, als ich mit Go entwickelte und versuchte, Pakete mithilfe von Dateien zu trennen.
 Ich habe es vorerst gelöst und mir sofort eine Notiz gemacht. .. ..


## Umgebung

Ausführung go version go1.13.14 linux/amd64 centos 7

Verzeichnisaufbau ./ | |--sample/ | | | |--sample.go | |--main.go


## Tatsächlicher Code


#### **`main.go`**
```go

package main

import "./sample"

func main() {
	a := sample.Foo("test")
	sample.PrintFoo(a)
}

sample.go


package sample

import "fmt"

func Foo(s string) string {
	return "aaa " + s + " bbb"
}

func PrintFoo(s string) {
	fmt.Println(s)
}
[root@marny ---]# go build -o practice
unexpected directory layout:
        import path: _/develop/go/src/test/marny/sample
        root: /develop/go/src
        dir: /develop/go/src/test/marny/sample
        expand root: /develop/go
        expand dir: /develop/go/src/test/marny/sample
        separator: /

Was für ein Fehler ist das?

Der Fehler "Unerwartetes Verzeichnislayout:" scheint ein Fehler zu sein, bei dem der Pfad des importierten Pakets nicht angegeben ist.

Ich selbst habe centos7 (vbox) bearbeitet, indem ich es mit samba mit Windows verbunden habe, sodass im Quellcode kein Fehler aufgetreten ist ...

Lösung

In meinem Fall wird ** $ GOPATH ** als "/ development / go" angegeben. Gemäß den GOPATH-Spezifikationen generiere ich Bins und srcs und entwickle Go, aber hier tritt ein Fehler auf.

Die Lösung besteht darin, import. / Sample in main.go in den relativen Pfad von $ GOPATH / src zu ändern.

Deshalb,

main.go


package main

import "test/marny/sample"

func main() {
	a := sample.Foo("test")
	sample.PrintFoo(a)
}

Ich denke, das wird es lösen.

GOPATH ist nervig.

Recommended Posts

[Go 1.13] Was tun, wenn ein unerwartetes Verzeichnislayout angezeigt wird?
[openpyxl] Was tun, wenn IllegalCharacterError in pandas.DataFrame.to_excel angezeigt wird?
Was tun, wenn [Errno 2] in Python keine solche Datei oder kein solches Verzeichnis angezeigt wird?
Was tun, wenn Ubuntu abstürzt?
Was tun, wenn in Python "SSL: CERTIFICATE_VERIFY_FAILED _ssl.c: 1056" angezeigt wird?
OSError: [Errno 40] Was tun, wenn die Nachricht zu lang erscheint?
Was tun, wenn in Django "Ungültiger HTTP_HOST-Header" angezeigt wird?
Was tun, wenn beim Ausführen von Python eine Warnung zur unsicheren Plattform angezeigt wird?
[Memorandum] Was tun, wenn nach dem Ausführen der Pip-Liste eine Warnung angezeigt wird?
Was tun, wenn pyinstaller: error: argument --add-binary: ungültig add_data_or_binary value: angezeigt wird
[Docker] Was tun, wenn ein Fehler aufgetreten ist? Der Binär-Git wurde nicht gefunden
Was tun, wenn in der Anaconda-Umgebung die Warnung "Die Umgebung ist konsistent ..." angezeigt wird
Was tun, wenn ein PermissionError in tempfile.mkstemp auftritt?
Was tun, wenn bei Verwendung von strptime "TypeError: muss Zeichenfolge sein, nicht int ..." angezeigt wird
Was tun, wenn eine Warnung zur Python-Integration in Neovims CheckHealth angezeigt wird?
Was tun, wenn "TypeError: Datentyp nicht verstanden" in der Python-Datei numpy.zeros angezeigt wird?
Was beim Nachahmen zu tun ist, wird in Python eingebettet
curl: (60) Was tun, wenn das Ausstellerzertifikat ungültig ist?
Was tun, wenn gdal_merge eine große Datei generiert?
Was tun, wenn ValueError, "nicht unterstützter Hash-Typ" ausgelöst wird?
Was tun, wenn "Name xxx nicht importiert werden kann" [Python]
[Python] Was tun, wenn beim Erstellen von Exe mit PyInstaller kein Modul mit dem Namen "pyproj.datadir" angezeigt wird?
Was tun, wenn ENOENT: Während der npm-Installation wird keine solche Datei oder kein solches Verzeichnis angezeigt
Was tun, wenn in GAE "Typfehler: muss _socket.socket sein, nicht Socket" angezeigt wird
[AWS] Was tun, wenn Sie mit Lambda pfeifen möchten?
Verfahren, die durchgeführt werden müssen, wenn Japanisch nicht in matplotlib angezeigt wird
Was tun, wenn die PyCharm-Schrift seltsam oder verstümmelt ist?
Was tun, wenn beim Aktualisieren von conda ein Fehler beim Entfernen auftritt?
Was tun, wenn nicht ausrichtbare boolesche Reihen als Indexer bereitgestellt werden?
Was tun, wenn beim Importieren von _ssl ein Fehler auftritt?
Was tun, wenn die Paketinstallation bei der Bereitstellung auf heroku fehlschlägt?
ImportError: Kein Modul Was tun, wenn Sie dazu aufgefordert werden?
[AWS] Was tun, wenn der Ping-Befehl eine "Zeitüberschreitung" verursacht?
Was tun, wenn Yum kaputt geht?
Was tun mit der Installation von Magics?
[virtualbox] Was tun, wenn [Spiegelliste nicht abgerufen werden konnte] angezeigt wird, wenn ein yum-Update unter CentOS7 durchgeführt wird?
TypeError: __init__ () hat ein unerwartetes Schlüsselwortargument erhalten. Was tun mit 'status'?
Was tun, wenn ein Video von cv2.VideoCapture nicht gelesen werden kann?
[Beanstalk] Was tun, wenn beim Importieren der UUID ein Fehler auftritt?
Was tun, wenn die Einstellungen der jupyterlab-Erweiterung nicht angezeigt werden?
Was tun mit PYTHON Release?
Was tun, wenn "Ich kann die Site nicht sehen !!!!"
Was tun, wenn UnicodeDecodeError während read_csv in Pandas auftritt (pd.read_table ())
Was tun, wenn ModuleNotFoundError: In Python tritt kein Modul mit dem Namen 'XXX' auf
Was tun, wenn der Werttyp in Python nicht eindeutig ist?
[Python] Was tun, wenn beim Importieren aus dem zu sys.path hinzugefügten Verzeichnis gegen PEP8 verstoßen wird?
Was ist zu tun, wenn "Betriebssystemfehler: [WinError 126] Das angegebene Modul kann nicht gefunden werden" in der Importlampe angezeigt wird
Was tun, wenn das über Scrapy heruntergeladene Ergebnis auf Englisch ist?
Was tun, wenn in pydoc keine Python-Dokumentation für ... gefunden wird?
[Python] Was tun, wenn ein Fehler im Zusammenhang mit der SSL-Authentifizierung zurückgegeben wird?
Was tun, wenn beim Importieren von numpy mit VScode ein Fehler auftritt?
Was tun, wenn beim Laden von mnist eine Fehlermeldung angezeigt wird?
Hinweise, was zu tun ist, wenn das Löschen von Schatten nicht mit Scatter () / Scatter3d () von Matplotlib funktioniert
[OSX] [pyenv] Was tun, wenn in pip ein SSL-Fehler auftritt?
Was tun, wenn psycopg2 einen Fehler auslöst, wenn pipenv in einer Pipenv-Umgebung gesperrt wird?