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.

exec: hangman.go Archivo ejecutable no encontrado en $PATH.

Tengo un problema al intentar ejecutar mi juego del ahorcado (hangman.go) dentro de otro programa (server.go).

package main

import (
    "log"
    "os/exec"
)

func main() {

cmd := exec.Command("hangman.go")

err := cmd.Run()

if err != nil {
    log.Fatal(err)
}
}

También he intentado construir un hangman.exe pero sigo teniendo el mismo error cuando ejecuto server.go.

none
2021/12/03 10:42:19 exec: “hangman.go”: archivo ejecutable no encontrado en $PATH
estado de salida 1

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El problema que estás enfrentando es que hangman.go no es un archivo ejecutable, sino un archivo de código fuente. No puedes ejecutar directamente un archivo de código fuente usando exec.Command.

    Para solucionar este problema, debes compilar el archivo hangman.go en un archivo ejecutable ejecutando el comando go build en el mismo directorio que hangman.go. Esto generará un archivo ejecutable llamado hangman (o hangman.exe en Windows).

    Luego, puedes modificar tu archivo server.go para ejecutar el ejecutable hangman reemplazando el argumento hangman.go por ./hangman (o ./hangman.exe si estás en Windows).

    paquete principal
    
    import (
        "log"
        "os/exec"
    )
    
    func main() {
        cmd := exec.Command("./hangman")
    
        err := cmd.Run()
    
        if err != nil {
            log.Fatal(err)
        }
    }
    

    Asegúrate de que ambos archivos estén en el mismo directorio y de que el archivo hangman tenga permisos de ejecución (puedes establecerlos usando chmod +x hangman). Con estos cambios, tu código debería funcionar como se espera.

Comments are closed.