在我的Jenkins构建中,我有一个Groovy脚本(因为我使用的是Pipeline插件),我正在尝试使用OkHttpClient
进行API调用。
我从here获得了以下Grape代码:
@Grapes(
@Grab(group='com.squareup.okhttp', module='okhttp', version='2.7.5')
)
为此,我得到了:
General error during conversion: Error grabbing Grapes -- [unresolved dependency: com.squareup.okkhttp#okhttp;2.7.5: not found]
java.lang.RuntimeException: Error grabbing Grapes -- [unresolved dependency: com.squareup.okhttp#okhttp;2.7.5: not found]
at sun.reflect.NativeContructorAccessorImpl.newInstance0(Native Method)
知道可能出现什么问题吗?
在Jenkins管道脚本中运行时,Grape无法检索包吗?
答案 0 :(得分:0)
我遇到类似的问题,运行使用@Grab注释的Jenkins Groovy控制台脚本。该错误是由Jenkins Groovy无法解析我的公司代理主机服务器引起的。
可以在命令行上设置Groovy代理服务器,如下所示:
groovy -Dhttp.proxyHost=yourproxy -Dhttp.proxyPort=portNumber yourscript.groovy
但我无法找到如何为Jenkins Groovy做到这一点。
我结束了以下解决方法:
您可以从命令行安装所需的库(假设您可以访问Jenkins服务器)。在这种情况下,代理服务器很容易指定如下:
grape -Dhttp.proxyHost=proxy.server.net -Dhttp.proxyPort=port install %groupId% %artifactId% [%version%]
还要确保在Jenkins用户帐户下登录时安装库。 Grapes库是特定于用户帐户的。