Wie starte ich ein Go-Projekt mit mehreren Dateien in einem main-Paket?
Hallo! Ich habe gerade angefangen, Go zu lernen, und bin auf ein Problem gestoßen. Ich habe ein kleines Projekt, das aus mehreren Dateien besteht, die sich alle im Ordner `cmd` befinden und als `package main` deklariert sind. Hier ist die Struktur:
```
myproject/
cmd/
main.go
helpers.go
config.go
```
In `main.go` rufe ich Funktionen aus `helpers.go` auf, zum Beispiel:
```go
// main.go
package main
func main() {
msg := getMessage()
fmt.Println(msg)
}
```
```go
// helpers.go
package main
func getMessage() string {
return "Hello from helpers!"
}
```
Wenn ich versuche, das Projekt mit dem Befehl `go run cmd/main.go` zu starten, erhalte ich einen Fehler:
```
# command-line-arguments
./main.go:6:14: undefined: getMessage
```
Ich verstehe, dass Go nur eine Datei sieht. Wie starte ich das Projekt richtig, damit alle Dateien im Paket berücksichtigt werden?
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs
Kotlin für maschinelles Lernen: Möglichkeiten und Grenzen – Teil 2
Fehlerbehandlung in C#: try/catch, finally und fortgeschrittene Techniken
Code-Review auf C++: Was Sie prüfen sollten, damit der Code nicht «explodiert»
Funktionen in Go übergeben: Vom Anfänger zum Profi in 15 Minuten