Groovy Дженкинс Grab ОШИБКА
Я пытаюсь запустить отличный сценарий на Дженкинс. Я использую "Выполнить систему Groovy скрипт". Мой скрипт должен использовать REST, поэтому мне нужен http-строитель. Вот как я пытаюсь получить это:
@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7.1')
import groovyx.net.http.HTTPBuilder
Однако, когда я нажимаю кнопку проверки синтаксиса, я получаю следующую ошибку:
javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/ivy/core/settings/IvySettings в org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796) в org.kohsuke.tapler. (Stapler.java:876) в org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233) в org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) в org.kolerserta..tryInvoke(Stapler.java:746) в org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) в org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:233) в org.kohsuke.sta.NameBasedDispatcher.dispatch (NameBasedDispatcher.java:58) в org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) в org.kohsuke.stapler.Stapler.invoke (Stapler.java:876hke.keg. Org. stapler.MetaClass $ 5.doDispatch (MetaClass.java:233) в org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) в org.kohsuke.stapler.Stapler.tryInvoke (Stapler.jpg). kohsuke.stapler.Stapler.invoke (Stapler.java: 876) в org.kohsuke.stapler.Stapler.invoke(Stapler.java:649) в org.kohsuke.stapler.Stapler.service(Stapler.java:238) в javax.servlet.http.HttpServlet.service(HttpServ. Java:790) в org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812) в org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669SutilvPutilvPutilvPutilvPutilvPutilvPutilvPutilvPutilvPutilvPutilvP). $1.doFilter(PluginServletFilter.java:135) по адресу hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126) по адресу org.eclipse.jetty.servlet.ServletHandler $ CachedChain.jlvservice: hhill:.csrf.CrumbFilter.doFilter(CrumbFilter.java:49) в org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) в hudson.security.ChainedServletFilterFilter $: в hudson.security.UnwrapSecurityExceptionFilter.doFilter (UnwrapSecurityExceptionFilter.java:51) в hudson.security.ChainedServletFilter $ 1.doFilter (ChainedServletFilter.java: 87) в jenkins.security.ExceptionTranslationFilter.doFilter (ExceptionTranslationFilter.java:117) в hudson.security.ChainedServletFilter $ 1.doFilter (ChainedServletFilter.java:87) в org.acegisecurity.provil: 125) at hudson.security.ChainedServletFilter Java: 87) в org.acegisecurity.ui.AbstractProcessingFilter.doFilter (AbstractProcessingFilter.java:271) в hudson.security.ChainedServletFilter 93) в hudson.security.ChainedServletFilter $ 1.doFilter (ChainedServletFilter.java:87) в org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter (HttpSessionContextIntegrationF) ilter.java:249) в hudson.security.HttpSessionContextIntegrationFilter2.doFilter (HttpSessionContextIntegrationFilter2.java:67) в hudson.security.ChainedServletFilter $ 1.doFilter (ChainedServletFilter.java.terf_Sterf_Serf_Serf_Serf_Serv_F_F_S_F_S_F_S_S_F_S_S_S_S_S_S_S_S_S_S_S_S_S_S_S_W 76) в hudson.security.HudsonFilter.doFilter (HudsonFilter.java:171) в org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) в org.kohsuke.terpilp. (CompressionFilter.java:49) по адресу org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) по адресу hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilip.jet.j.t. servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1652) в org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter (DiagnosticThreadNameFilter.java:30) в org.eclipse.jetty.andletHerler.Shlerlet.Shlerlet.Shlerlet.Shlerlet.Shlerlet.Shlerlet.Shlerlet.Shlet 1652) в org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) в org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) в org.eclipse.jetty.security.SecurityHandler.hand:553) в org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) в org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) в org.eclip.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) в org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) в org.eclipse.jetty.server.handler.ContecopeHandler. ContextHandler.java:1061) в org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) в org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) в org.eclipse.jetty.server.Server.handle(Server.java:499) в org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311) в org.eclipse.jetty.server.HttpConnection.onFillable(.Джава:257) в org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544) в winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) в java.util.concurrent.ThreadPoolExecutor.runWorker() на java.util.concurrent.ThreadPoolExecutor$Worker.run(неизвестный источник) на java.lang.Thread.run(неизвестный источник) Причина: java.lang.NoClassDefFoundError: org/apache/ivy/core/settings/IvySettings на java.lang.Class.getDeclaredMethods0(собственный метод) в java.lang.Class.privateGetDeclaredMethods(неизвестный источник) в java.lang.Class.privateGetPublicMethods(неизвестный источник) в java.lang.Class.getMethods(неизвестный источник) в java.Introspector.getPublicDeclaredMethods(Неизвестный источник) в java.beans.Introspector.getTargetMethodInfo(Неизвестный источник) в java.beans.Introspector.getBeanInfo(Неизвестный источник) в java.beans.Introspector.getBeanInlg $15.run(MetaClassImpl.java:3290) в java.security.AccessController.doPrivileged(собственный метод d) в groovy.lang.MetaClassImpl.addProperties(MetaClassImpl.java:3288) в groovy.lang.MetaClassImpl.initialize(MetaClassImpl.java:3265) в org.codehaus.groovy.reflection.Mlassj250ClassInfo.Uf) в org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:285) в groovy.grape.GrapeIvy.$getStaticMetaClass(GrapeIvy.groovy) в groovy.grape.GrapeIvy.(GrapeIvy.groovy:81).reflect.NativeConstructorAccessorImpl.newInstance0(собственный метод) в sun.reflect.NativeConstructorAccessorImpl.newInstance(неизвестный источник) в sun.reflect.DelegatingConstructorAccessorImpl.newInstance(неизвестный источник) в java.lanstInst.jn.lang.Class.newInstance (неизвестный источник) в groovy.grape.Grape.getInstance(Grape.java:121) в groovy.grape.Grape.grab(Grape.java:159) в groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation).java:378) в org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTransformat) ionVisitor.java:321) в org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:931) в org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUg.inov.jov.jin.jin).jov.jit).control.CompilationUnit.processPhaseOperations(CompilationUnit.java:569) в org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:546) в groovy.lang.GroovyClassLolass.oovyCove.doSar lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268) в groovy.lang.GroovyShell.parseClass(GroovyShell.java:688) в groovy.lang.GroovyShell.parse(GroovyShell.govy.govygarov.gava.00: 7) (GroovyShell.java:736) в groovy.lang.GroovyShell.parse(GroovyShell.java:727) в hudson.plugins.groovy.StringScriptSource$DescriptorImpl.doCheckScript(StringScriptSource.java:71) в sun.remplhoNN. Собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke(Неизвестный источник) в sun.reflect.Delegat ingMethodAccessorImpl.invoke(Неизвестный источник) на java.lang.reflect.Method.invoke (Неизвестный источник) в org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324) в org.kohsuke.stapler.Functionvob (Function.java:167) в org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100) в org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124) в org.koDsuserp..dispatch(NameBasedDispatcher.java:58) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) ... еще 66 причин: java.lang.ClassNotFoundException: org.apache.ivy.core.settings.IvySettings на java.net.URLClassLoader.findClass(неизвестный источник) на java.lang.ClassLoader.loadClass(неизвестный источник) на java.lang.ClassLoader.loadClass(неизвестный источник) на org.eclipse.jetty.webapp.WebAppClassLoader.load WebAppClassLoader.java:450) at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:403) ... еще 112
Любая идея?
1 ответ
Я нашел ответ на свой вопрос. Чтобы загрузить и скопировать файл ivy.jar в каталог lib Jenkins (например, C:\Program Files (x86)\Jenkins\war\WEB-INF\lib) и перезапустить Jenkins (например, через системные службы), можно выполнить следующие действия: используйте @Grab из консоли скриптов. Дополнительная информация: https://groups.google.com/forum/.