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
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 usandoexec.Command
.Para solucionar este problema, debes compilar el archivo
hangman.go
en un archivo ejecutable ejecutando el comandogo build
en el mismo directorio quehangman.go
. Esto generará un archivo ejecutable llamadohangman
(ohangman.exe
en Windows).Luego, puedes modificar tu archivo
server.go
para ejecutar el ejecutablehangman
reemplazando el argumentohangman.go
por./hangman
(o./hangman.exe
si estás en Windows).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 usandochmod +x hangman
). Con estos cambios, tu código debería funcionar como se espera.