1

目前我正在试图从我的管道作为我的一个节点上运行Groovy脚本,但我遇到了这个错误:为什么不会在Jenkins管道中运行groovy?

[CompanyName] Running shell script 
+ ./ideainspect.groovy 
env: groovy: No such file or directory 

而且,我试图安装插件的常规,但由于某些原因,它将不会安装。无论何时刷新工具页面,安装程序都会消失。我安装groovy错了吗?请帮忙!

编辑:相关数据

stage 'Static Analysis' 
node { 
    dir("Android/btMobileApp") { 
     sh "./ideainspect.groovy" 
     sh "./gradlew checkstyle lintDebug" 
    } 
} 

而且ideainspect.groovy文件与家当#!/usr/bin/env groovy,这可能是问题的可执行文件。

+0

你的jenkins文件的相关部分是什么样的? –

+0

添加了上面的信息。 – iHowell

回答

1

您的jenkins用户在其路径上有groovy吗?如果是这样的沟家当,并尝试

SH '时髦ideainspect.groovy'

如果它不在道路上,你可以尝试

SH '的/ usr/bin中/常规ideainspect.groovy'

(或安装groovy的任何地方)

或者使用Manage Jenkins - > Configure Systems将其添加到路径环境变量中。这可能不适合,如果你有很多项目使用不同版本的groovy

+0

有没有办法测试它是否安装在路径上?我已经将它安装在机器上,我无法分辨用户是否可以访问。 – iHowell

+0

试试sh'groovy ideainspect.groovy'。如果它说'找不到常规',那么它不在路上。或者ssh进入盒子,然后su到jenkins用户,然后尝试从那里运行groovy,达到同样的效果。 –

+0

好的,使用管理jenkins脚本控制台中的第一个方法,我得到的错误:groovy.lang.MissingMethodException:没有方法的签名:Script1.sh()适用于参数类型:(java.lang.String)values :[groovy ideainspector.groovy] 可能的解决方案:is(java.lang.Object),use([Ljava.lang.Object;),run(),run(),any(),each(groovy.lang.Closure ) – iHowell

相关问题