El código ejecutado por Hudson no puede encontrar el ejecutable en la línea de comandos

StackOverflow https://stackoverflow.com/questions/137243

  •  02-07-2019
  •  | 
  •  

Pregunta

Estoy configurando mi primer trabajo en Hudson y tengo algunos problemas. El trabajo supervisa dos repositorios, uno que contiene nuestros archivos de configuración de base de datos, el otro un poco de código que valida y prueba los archivos de configuración de base de datos.

Parte del código que se ejecuta arrojará los archivos de configuración validados en PostgreSQL, usando la herramienta de línea de comandos psql, usando Runtime.exec (). Este código funciona perfectamente en mi máquina, pero cuando Hudson lo ejecuta (máquina diferente) obtengo el siguiente error:

java.io.IOException: Cannot run program "psql": CreateProcess error=2, The system cannot find the file specified

psql.exe está en la ruta, y puedo ejecutarlo escribiendo todo en la línea de comandos, desde el mismo lugar donde Hudson está ejecutando el código. El archivo que se debe pasar a psql existe.

¿Alguna idea?

¿Fue útil?

Solución

Encuentro que necesitas tener el programa en la ruta cuando ejecutas hudson o el esclavo. A pesar de tener la capacidad de establecer el camino en Hudson, no parece funcionar. También puede poner la ruta completa en el comando, lo que es realmente una buena idea desde una perspectiva de seguridad de todos modos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top