Shell命令在终端中工作,但在Jenkins构建期间不起作用

时间:2015-05-19 19:45:18

标签: linux bash shell jenkins

我有一个Jenkins构建服务器,它在每个构建完成之前运行以下命令:

sudo make -f nameOfMakeFile.mak

当我在终端和相应的目录中时,此命令可以正常工作并生成所需的OUTDIR文件。但出于某种原因,当詹金斯运行相同的命令时,我得到了这个错误:

sudo make -f nameOfMakeFile.mak
/bin/sh: 1: cd: can't cd to ../../ThirdParty/aes/

此时它会将CD转到另一个目录并失败。

知道为什么我的终端命令有效,但Jenkins运行相同的命令却没有?

2 个答案:

答案 0 :(得分:1)

../../ThirdParty/aes/显然是一条相对路径。你不知道Jenkins在执行cd命令时从哪里开始。您必须使路径成为全局路径,或者为脚本创建一个已知的起点。

答案 1 :(得分:0)

您的jenkins用户可能无法访问../../ThirdParty/aes/