running locally with @Grab fails with

262 views
Skip to first unread message

yo...@schli.ch

unread,
Oct 16, 2014, 6:35:19 AM10/16/14
to job-dsl...@googlegroups.com
Hi,

I try to run my dsl file locally, using the first method described in the wiki: Run a DSL Script locally

My dsl file uses @Grab to inclue the Github API library: 
@Grab(group='org.kohsuke', module='github-api', version='1.59')
import org.kohsuke.github.GitHub

This works quite fine inside of Jenkins, but when run locally, it throws the following exception (full output attached below):

Caused by: BUG! exception in phase 'conversion' in source unit '/Users/marc/jenkins-seeds/github_api.groovy' tmp
        ...
Caused by: java.net.UnknownHostException: tmp
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:223)
        ....
at org.apache.ivy.core.settings.IvySettings.load(IvySettings.java:412)
        ....
at groovy.grape.GrapeIvy.<init>(GrapeIvy.groovy:87)
        ....
at groovy.grape.Grape.getInstance(Grape.java:101)
at groovy.grape.Grape.addResolver(Grape.java:201)
at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:203)
at org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTransformationVisitor.java:302)
at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:843)
... 

"tmp" is actually the first element of the path where the job-dsl-core-1.27-SNAPSHOT-standalone.jar is located. When I move the jar file somewhere else, it also changes. Why it interprets that as a host is beyond me...

Any idea what could cause this? Google is unusually silent about it. Does anybody use @Grab locally?

I also tried in on the same machine and the same user that is running Jenkins, and have the same behaviour.

Thanks,
Marc

-------------------
Marcbook:~/jenkins-seeds(master) % java -jar /tmp/job-dsl-plugin/job-dsl-core/build/libs/job-dsl-core-1.27-SNAPSHOT-standalone.jar  github_api.groovy 
[Boot] INFO:  setProperties(com.simontuffs.onejar.JarClassLoader@7b1ddcde)
[Boot] INFO:  using JarClassLoader: com.simontuffs.onejar.JarClassLoader
[JarClassLoader] WARN:  org/xmlpull/v1/XmlPullParser.class in lib/xpp3_min-1.1.4c.jar is hidden by lib/xmlpull-1.1.3.1.jar (with different bytecode)
[JarClassLoader] WARN:  org/xmlpull/v1/XmlPullParserException.class in lib/xpp3_min-1.1.4c.jar is hidden by lib/xmlpull-1.1.3.1.jar (with different bytecode)
[JarClassLoader] INFO:  findResource() found: "META-INF/dgminfo" for caller null in codebase lib/groovy-all-1.8.6.jar
[JarClassLoader] INFO:  findResources(META-INF/services/org.codehaus.groovy.source.Extensions)
[JarClassLoader] INFO:  findResources: looking in [lib/guava-14.0.1.jar, lib/groovy-all-1.8.6.jar, lib/commons-codec-1.8.jar, main/main.jar, lib/version-number-1.1.jar, lib/xstream-1.4.4-jenkins-3.jar, lib/ivy-2.2.0.jar, lib/xpp3_min-1.1.4c.jar, /, lib/xmlunit-1.4.jar, lib/xmlpull-1.1.3.1.jar]
[JarClassLoader] INFO:  findResources(): Adding jar:file://tmp/job-dsl-plugin/job-dsl-core/build/libs/job-dsl-core-1.27-SNAPSHOT-standalone.jar!/lib/groovy-all-1.8.6.jar!/META-INF/services/org.codehaus.groovy.source.Extensions to resources list.
Processing DSL script github_api.groovy
[JarClassLoader] INFO:  findResources(META-INF/services/org.codehaus.groovy.transform.ASTTransformation)
[JarClassLoader] INFO:  findResources: looking in [lib/guava-14.0.1.jar, lib/groovy-all-1.8.6.jar, lib/commons-codec-1.8.jar, main/main.jar, lib/version-number-1.1.jar, lib/xstream-1.4.4-jenkins-3.jar, lib/ivy-2.2.0.jar, lib/xpp3_min-1.1.4c.jar, /, lib/xmlunit-1.4.jar, lib/xmlpull-1.1.3.1.jar]
[JarClassLoader] INFO:  findResources(): Adding jar:file://tmp/job-dsl-plugin/job-dsl-core/build/libs/job-dsl-core-1.27-SNAPSHOT-standalone.jar!/lib/groovy-all-1.8.6.jar!/META-INF/services/org.codehaus.groovy.transform.ASTTransformation to resources list.
[JarClassLoader] INFO:  findResource() found: "org/apache/ivy/core/settings/ivysettings.xml" for caller null in codebase lib/ivy-2.2.0.jar
[JarClassLoader] INFO:  findResource() found: "org/apache/ivy/core/settings/typedef.properties" for caller null in codebase lib/ivy-2.2.0.jar
[JarClassLoader] INFO:  findResource() found: "module.properties" for caller null in codebase lib/ivy-2.2.0.jar
[JarClassLoader] INFO:  findResource() found: "groovy/grape/defaultGrapeConfig.xml" for caller null in codebase lib/groovy-all-1.8.6.jar
[JarClassLoader] INFO:  findResource() found: "org/apache/ivy/core/settings/ivy.properties" for caller null in codebase lib/ivy-2.2.0.jar
[JarClassLoader] INFO:  findResource(): unable to locate "META-INF/services/javax.xml.parsers.SAXParserFactory"
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.simontuffs.onejar.Boot.run(Boot.java:313)
at com.simontuffs.onejar.Boot.main(Boot.java:161)
Caused by: BUG! exception in phase 'conversion' in source unit '/Users/marc/jenkins-seeds/github_api.groovy' tmp
at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:847)
at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:548)
at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:524)
at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:501)
at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:306)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:287)
at groovy.util.GroovyScriptEngine$ScriptClassLoader.parseClass(GroovyScriptEngine.java:197)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:267)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:214)
at groovy.util.GroovyScriptEngine.loadScriptByName(GroovyScriptEngine.java:470)
at groovy.util.GroovyScriptEngine.createScript(GroovyScriptEngine.java:539)
at javaposse.jobdsl.dsl.DslScriptLoader.runDslEngineForParent(DslScriptLoader.java:62)
at javaposse.jobdsl.dsl.DslScriptLoader.runDslEngine(DslScriptLoader.java:91)
at javaposse.jobdsl.dsl.DslScriptLoader$runDslEngine.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
at javaposse.jobdsl.Run$_main_closure2.doCall(Run.groovy:35)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:877)
at groovy.lang.Closure.call(Closure.java:412)
at groovy.lang.Closure.call(Closure.java:425)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1376)
at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1348)
at org.codehaus.groovy.runtime.dgm$162.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:271)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at javaposse.jobdsl.Run.main(Run.groovy:33)
... 6 more
Caused by: java.net.UnknownHostException: tmp
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:223)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:431)
at java.net.Socket.connect(Socket.java:527)
at java.net.Socket.connect(Socket.java:476)
at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
at sun.net.NetworkClient.openServer(NetworkClient.java:118)
at sun.net.ftp.FtpClient.openServer(FtpClient.java:488)
at sun.net.ftp.FtpClient.openServer(FtpClient.java:475)
at sun.net.www.protocol.ftp.FtpURLConnection.connect(FtpURLConnection.java:270)
at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:352)
at sun.net.www.protocol.jar.URLJarFile.retrieve(URLJarFile.java:195)
at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:50)
at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:55)
at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:104)
at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:132)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:650)
at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:186)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:779)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:744)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:128)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:543)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:277)
at org.apache.ivy.core.settings.XmlSettingsParser.doParse(XmlSettingsParser.java:160)
at org.apache.ivy.core.settings.XmlSettingsParser.parse(XmlSettingsParser.java:150)
at org.apache.ivy.core.settings.IvySettings.load(IvySettings.java:412)
at org.apache.ivy.core.settings.IvySettings$load.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at groovy.grape.GrapeIvy.<init>(GrapeIvy.groovy:87)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:357)
at java.lang.Class.newInstance(Class.java:310)
at groovy.grape.Grape.getInstance(Grape.java:101)
at groovy.grape.Grape.addResolver(Grape.java:201)
at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:203)
at org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTransformationVisitor.java:302)
at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:843)
... 42 more

yo...@schli.ch

unread,
Oct 16, 2014, 6:38:10 AM10/16/14
to job-dsl...@googlegroups.com
I meant to say: "running locally with @Grab fails with UnknownHostException tmp"

Vincent Janelle

unread,
Dec 7, 2014, 11:20:44 PM12/7/14
to job-dsl...@googlegroups.com
Did you ever resolve this?  I'm experiencing the same right now.

Matthew Johnson

unread,
Feb 26, 2015, 4:51:05 PM2/26/15
to job-dsl...@googlegroups.com
I saw the same error today and figured out that if you comment out @Grab and import statements, then it will process the job DSL syntax and produce the XML output.
Reply all
Reply to author
Forward
0 new messages