Jenkins没有此类文件或目录错误。但是文件存在

标签 jenkins jenkins-plugins

我在Jenkins中将bash脚本作为作业运行时遇到问题(执行shell步骤)。基本上,我现在将脚本缩小为一行,以测试Jenkins为什么无法运行该脚本。这里是:

waxsim

因此,这只是一行。当不带参数运行时,应该给我这个输出:
No app-path was specified!
usage: waxsim [options] app-path
example: waxsim -s 2.2 /path/to/app.app
Available options are:
    -s sdk  Version number of sdk to use (-s 3.1)
    -f family   Device to use (-f ipad)
    -e VAR=value    Environment variable to set (-e CFFIXED_HOME=/tmp/iphonehome)
    -a  Available SDKs
    -v path Output video recording at path
    -h  Prints out this wonderful documentation!

Jenkins以jenkins用户身份运行。运行作业后,它将失败,并显示以下信息:
+ waxsim
/var/folders/gx/t63prwt53w7gr2jjt9k66q9800009c/T/hudson4478539334800834890.sh: 
line 3: waxsim: No such file or directory
Build step 'Execute shell' marked build as failure

当我手动执行waxsim并以jenkins用户身份登录时,一切正常。它适用于计算机上的每个用户。它仅在 Jenkins (Jenkins)作业中执行时不起作用。有人知道这可能是什么问题吗?

我尝试指定waxsim的完整路径,即:/usr/bin/waxsim,但没有区别。

谢谢!

最佳答案

事实证明,它在终端机中运行时起作用而在 Jenkins 运行时不起作用的原因被认为是微不足道的。

在终端中,我运行bash,而Jenkins使用的是shell。因此,将导出路径添加到Jenkins的execute shell脚本中解决了该问题。

关于Jenkins没有此类文件或目录错误。但是文件存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17144587/

相关文章:

jenkins - 如何将 "Run Parameter"中 "Copy artifacts from another project"中的值用于我们的 Jenkins 作业?

git - Jenkins SCM Sync 配置插件和 Jenkins Job Builder 有什么区别?

jenkins - 为 Jenkins 构建启用 Checkstyle 注释处理

python - Jenkins Python API 和多配置项目

java - Jenkins Slave 使用JNLP 需要安全提示

jenkins - 从另一个多分支管道触发多分支管道作业

jenkins - 如何使用 Jenkins Pipeline 中的 Xvnc 插件

javascript - 在 jenkins 中 webpacked 的 config.js 中八达通变量替换的策略

windows - 发布时出现异常,异常信息[Exec timed out or was interrupted after .. ms]

email - Jenkins Build-flow + Email-ext,邮件未发送