Cómo importar paquetes locales en Go sin GOPATH (módulos Go)
¡Hola! Estoy empezando a aprender Go y tengo un problema con la importación de paquetes locales. Estoy acostumbrado a trabajar con otros lenguajes donde simplemente puedo crear archivos en una misma carpeta e importarlos. Pero en Go resultó ser más complicado.
Tengo esta estructura de proyecto:
```
myproject/
├── main.go
└── utils/
└── helper.go
```
En `helper.go` definí la función `Hello()`:
```go
package utils
func Hello() string {
return "¡Hola desde utils!"
}
```
En `main.go` intento importar este paquete:
```go
package main
import (
"fmt"
"myproject/utils"
)
func main() {
fmt.Println(utils.Hello())
}
```
Pero cuando ejecuto `go run main.go`, obtengo un error: `package myproject/utils is not in GOROOT (/usr/local/go/src/myproject/utils)`. He leído que antes había que configurar GOPATH, pero escuché que en las nuevas versiones de Go hay algo llamado "módulos". ¿Cómo importar correctamente paquetes locales sin GOPATH? Explíquenme, por favor, para principiante, paso a paso.