es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Problema de importación del paquete “golang” en Visual Studio Code.

¿Podría alguien iluminarme sobre cómo hacer que las simples declaraciones de importación funcionen en VSC para un archivo main.go de ejemplo que tomé prestado de algún lugar? Se aplican las siguientes observaciones:

  1. Versión de Go: go1.17.2 windows/amd64;
  2. Puedo hacer que este programa funcione (usando módulos) sin ningún problema;
  3. Las importaciones en mi programa principal son para fyne, como por ejemplo “fyne.io/fyne/v2/app”, etc;
  4. $GOROOT apunta a algo como C:\Program files\Go…;
  5. $GOPATH apunta a C:\Users\xyz\go…;
  6. Mi código fuente actual se encuentra en $GOPATH\src… pero se puede mover a otro lugar si es necesario;
  7. En mi subdirectorio de origen hay un main.go y agregué un archivo de módulo de la siguiente manera: go mod init main & go mod tidy, esto produce la siguiente salida:
    go: encontrando el módulo para el paquete fyne.io/fyne/v2/app
    go: encontrando el módulo para el paquete fyne.io/fyne/v2
    go: encontrando el módulo para el paquete fyne.io/fyne/v2/container
    go: encontrando el módulo para el paquete fyne.io/fyne/v2/canvas
    go: se encontró fyne.io/fyne/v2 en fyne.io/fyne/v2 v2.1.2
    go: se encontró fyne.io/fyne/v2/app en fyne.io/fyne/v2 v2.1.2
    go: se encontró fyne.io/fyne/v2/canvas en fyne.io/fyne/v2 v2.1.2
    go: se encontró fyne.io/fyne/v2/container en fyne.io/fyne/v2 v2.1.2

Entonces parece que todo lo necesario está ahí y posteriormente puedo ejecutar el programa.

  1. Sin embargo, al mostrar mi fuente main.go en VSC (1.63.0), se queja de que no puede encontrar (importar) ninguno de los paquetes/imports de fyne requeridos. Enumera que busca en los subdirectorios \src tanto de $GOROOT como de $GOPATH pero no encuentra nada. Esto es correcto porque no hay nada allí. Lo más cercano que puedo encontrar son paquetes de fyne ubicados en C:\Users\xyz\go\pkg\mod\fyne.io\fyne…

He mirado toda clase de documentación, pero no tengo idea de cuál es exactamente el problema ni cómo solucionarlo.

Gracias de antemano.
Peter

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema aquí es que Visual Studio Code (VSC) no puede ubicar los paquetes fyne necesarios para su archivo main.go. Esto puede ser debido a varias razones, como una configuración incorrecta o una instalación incorrecta del paquete. Aquí hay algunos pasos que puede seguir para intentar resolver este problema:

    1. Asegúrese de que la variable de entorno $GOPATH esté configurada correctamente con el directorio de su espacio de trabajo de Go (en este caso, C:\Users\xyz\go). Puede verificar esto ejecutando el comando go env en su terminal y verificando el valor de GOPATH.
    2. Verifique si el paquete fyne.io/fyne/v2 está instalado ejecutando el comando go list -m fyne.io/fyne/v2 en su terminal. Esto debería mostrar la versión y la ruta del paquete instalado.

    3. Verifique que tenga instalada la extensión Go en VSC. Esto se puede hacer yendo a Extensiones en el menú de la izquierda y buscando “Go”.

    4. Verifique si los paquetes fyne necesarios están listados en el archivo go.mod de su proyecto. Si no es así, puede agregarlos manualmente ejecutando el comando go mod edit -require fyne.io/fyne/v2@v2.1.2 en su terminal.

    5. Si los pasos anteriores no funcionan, puede intentar recargar la ventana de VSC o reiniciar VSC por completo para ver si los cambios surten efecto.

    Espero que estos pasos le ayuden a resolver el problema de importación en VSC para su archivo main.go. ¡Buena suerte!

Comments are closed.