I've been having a hard time trying to execute a simple golang program in a virtual machine powered by vagrant.
These are the relevant fields of my go env
:
GOARCH="amd64"
GOPATH="/usr/local/src/go"
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
This is the program I'm trying to execute ( located in /usr/local/src/go/program ):
package program
import (
"fmt"
)
func main() {
fmt.Print("Aloha")
}
This, the output that I get:
main.go:4:5:
/usr/local/go/src/fmt/doc.go:1:1: expected 'package', found 'EOF'
package runtime:
/usr/local/go/src/runtime/alg.go:1:1: expected 'package', found 'EOF'
Take into account that this is a completely fake program. The weird thing is that it totally works in a different environment. What am I missing here?
Thanks a lot!
Using VS Code for GO, and faced the same issue. Saving the file 'Ctrl+S' on Windows fixed the issue.
Reference : Answered by Nico
This usually happens when you have a file e.g. foo_test.go empty or without package declaration.
Just save the file first and than run the cammand.it is working.
go run main.go
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With