我正在Hudson开始我的第一份工作,而且我遇到了一些问题。该作业监视两个存储库,一个包含我们的数据库安装文件,另一个包含验证和测试数据库安装文件的一些代码。

运行的部分代码将使用psql命令行工具,使用Runtime.exec()在PostgreSQL中抛出经过验证的安装文件。这段代码在我的机器上完美运行,但是当Hudson执行它(不同的机器)时,我收到以下错误:

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

psql.exe在路径上,我可以通过在命令行输入整个内容来执行它,Hudson正在执行代码。要传递给psql的文件存在。

有什么想法吗?

有帮助吗?

解决方案

我发现当你启动哈德森或奴隶时你需要在路径中有程序。尽管有能力在哈德森设置路径,但它似乎不起作用。你也可以把完整的路径放在命令中,无论如何从安全角度来看这确实是一个好主意。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top