簡體   English   中英

Groovy jenkins抓取錯誤

[英]Groovy jenkins Grab ERROR

我試圖在詹金斯上運行一個普通的腳本。 我使用“執行系統常規腳本”。 我的腳本需要使用REST,因此我需要http-builder。 這是我嘗試獲取的方法:

@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.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796)的org / apache / ivy / core / settings / IvySettings在org.kohsuke.stapler.Stapler.invoke (Stapler.java:876)在org.kohsuke.stapler.MetaClass $ 5.doDispatch(MetaClass.java:233)在org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)在org.kohsuke.stapler.Stapler org.kohsuke.stapler的.tryInvoke(Stapler.java:746).org.kohsuke.stapler.MetaClass的Stapler.invoke(Stapler.java:876)$ 5.doDispatch(MetaClass.java:233)的org.kohsuke.stapler org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)的org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)的.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)在org.kohsuke。在org.kohsuke.stapler.Stapler.Stapler.tryInvoke(Stapler.java:746)處的org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)處的Stapler.MetaClass $ 5.doDispatch(MetaClass.java:233)。 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(HttpServlet。) java:790)位於org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)位於org.eclipse.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1669)位於hudson.util.PluginServletFilter hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)處的$ 1.doFilter(PluginServletFilter.java:135)hudson.security處的org.eclipse.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1652)處的$ 1.doFilter(PluginServletFilter.java:135) .csrf.CrumbFilter.doFilter(CrumbFilter.java:49)(位於org.eclipse.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1652)位於hudson.security.ChainedServletFilter $ 1.doFilter(ChainedServletFilter.java:84)位於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.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java :125)位於hudson.security.ChainedServletFilter $ 1.doFilter(ChainedServletFilter.java:87),位於org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135)位於hudson.security.ChainedServletFilter $ 1.doFilter(ChainedServletFilter)。 java:87)位於org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)位於hudson.security.ChainedServletFilter $ 1.doFilter(ChainedServletFilter.java:87)位於jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java: 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:87),位於hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java: 76)位於hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)位於org.eclipse.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1652)位於org.kohsuke.stapler.compression.CompressionFilter.doFilter (CompressionFilter.java:49),位於org.eclipse.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1652),位於hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82),位於org.eclipse.jetty。 org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)上的servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1652)在org.eclipse.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java: 1652)在org.eclipse.jetty org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)的.servlet.ServletHandler.doHandle(ServletHandler.java:585)org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java) :553),位於org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)的org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)。在org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)的jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)在org.eclipse.jetty.server.handler.ContextHandler.doScope( org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)處的ContextHandler.java:1061)org org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)處的ContextHandler.java org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)上的.eclipse.jetty.server.Server.handle(Server.java:499)org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection)的.java: 257)at org.eclipse.jetty.io.AbstractConnection $ 2.run(AbstractConnection.java:544)at winstone.BoundedExecutorService $ 1.run(BoundedExecutorService.java:77)at java.util.concurrent.ThreadPoolExecutor.runWorker(未知源)在java.lang.Thread.run(未知源)處java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知源)原因:java.lang.NoClassDefFoundError:java的org / apache / ivy / core / settings / IvySettings .lang.Class.getDeclaredMethods0(本機方法)(位於java.lang.Class.privateGetDeclaredMethods(未知源),位於java.lang.Class.privateGetPublicMethods(未知源),位於java.lang.Class.getMethods(未知源),位於java.beans .Introspector.getPublicDeclaredMethods(未知源)(位於java.beans.Introspector.getTargetMethodInfo(未知源)在java.beans.Introspector.getBeanInfo(未知源)在groovy.lang.MetaClassImpl在java.security.AccessController.doPrivileged(本機方法)中運行$ 15.run(MetaClassImpl.java:3290) d)在groovy.lang.MetaClassImpl.initialize(MetaClassImpl.java:3265)在groovy.lang.MetaClassImpl.addProperties(MetaClassImpl.java:3288)在org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:254 )在groovy.grape.GrapeIvy的org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:285)在groovy.grape.GrapeIvy。$ getStaticMetaClass(GrapeIvy.groovy)在(gropeyvy.groovy:81)在星期日java.lang.reflect.Constructor.newInstance上的.reflect.NativeConstructorAccessorImpl.newInstance0(本機方法),sun.reflect.NativeConstructorAccessorImpl.newInstance(未知源),java.lang.reflect.Constructor.newInstance(未知源) groovy.grape.Grape.getInstance(Grape.java:121)的groovy.grape.Grape.grab(Grape.java:159)的.lang.Class.newInstance(未知源)groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation) .java:378),網址為org.codehaus.groovy.transform.ASTTransformationVisitor $ 3.call(ASTTransformat org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:931)上的ionVisitor.java:321)org.codehaus.groovy上org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:593)上的groovy的org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:546)的groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:298)的.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:569)在groovy。 groovy.lang.GroovyShell.parseClass(GroovyShell.java:688)處於groovy.lang.GroovyShell.parse(GroovyShell.java:700)處的lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268)在groovy.lang.GroovyShell。 (GroovyShell.java:736)在groovy.lang.GroovyShell.parse(GroovyShell.java:727)在hudson.plugins.groovy.StringScriptSource $ DescriptorImpl.doCheckScript(StringScriptSource.java:71)在sun.reflect.NativeMethodAccessorImpl.invoke0(位於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.Function.bindAndInvoke (Function.java:167)在org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100)在org.kohsuke.stapler.MetaClass $ 1.doDispatch(MetaClass.java:124)在org.kohsuke.stapler.NameBasedDispatcher org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)上的.dispatch(NameBasedDispatcher.java:58)... 66更多原因:java.lang.ClassNotFoundException:org.apache.ivy.core.settings。 org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(在java.net.URLClassLoader.findClass(未知源)上的IvySettings(在java.lang.ClassLoader.loadClass(未知源)上的java.lang.ClassLoader.loadClass(未知源)上的IvySettings WebAppClassLoader.java:450),位於org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:403)...還有112個

任何想法?

我找到了我問題的答案。 要下載ivy.jar並將其復制到Jenkins lib目錄(例如C:\\ Program Files(x86)\\ Jenkins \\ war \\ WEB-INF \\ lib)中並重新啟動Jenkins(例如通過系統服務),然后可以從腳本控制台使用@Grab。 進一步閱讀: https : //groups.google.com/forum/#! msg/ job-dsl- plugin/EG6eqQYYI7M/ 2TKKysNw4QEJ

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM