added a comment - - edited
I'm getting the same issue. The stack trace (included below) indicates that Grapes in Eclipse is not able to find JSCH jars, which I have included in ~/.groovy/lib (so the script runs just fine). I'm not sure why Ivy is attempting to use the SSHResolver, as that's not part of the resolver chains... Thoughts on how to fix this?
EDIT: I'm using a custom ~/.groovy/grapeConfig.xml, which includes an ssh resolver (but as I said, it's not part of the resolver chain. The resolver chain includes a file system resolver and an http resolver), and I've got the following script:
package main
import static groovyx.gpars.GParsPool.*
import static groovyx.gpars.dataflow.DataFlow.*
@Grab("org.codehaus.gpars:gpars")
private class GRAPEHOLDER {
}
withPool(2) {
10.times {
task {
println "hello"
}
}
}
Errors appear on both the import lines, indicating that the class cannot be found, but if I run the script (from inside Eclipse, even), it works just fine.
General error during conversion: Transform groovy.grape.GrabAnnotationTransformation@395d9cdb
cannot be run org.codehaus.groovy.GroovyException: Transform groovy.grape.GrabAnnotationTransformation@395d9cdb cannot be run at
org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTransformationVisitor.java:420) at
org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:920) at
org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:588) at
org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:564) at
org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:541) at
org.codehaus.jdt.groovy.internal.compiler.ast.GroovyCompilationUnitDeclaration.processToPhase(GroovyCompilationUnitDeclaration.java:168) at
org.codehaus.jdt.groovy.internal.compiler.ast.GroovyParser.dietParse(GroovyParser.java:429) at
org.codehaus.jdt.groovy.integration.internal.MultiplexingParser.dietParse(MultiplexingParser.java:44) at
org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:769) at
org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:389) at
org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:475) at
org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:408) at
org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.compile(IncrementalImageBuilder.java:322) at
org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:345) at
org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:135) at
org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:268) at
org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:196) at
org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629) at
org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172) at
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:203) at
org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:255) at
org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:258) at
org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:311) at
org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:343) at
org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144) at
org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:242) at
org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.NoClassDefFoundError: com/jcraft/jsch/JSchException at
org.apache.ivy.plugins.resolver.SshResolver.<init>(SshResolver.java:28) at
sun.reflect.GeneratedConstructorAccessor29.newInstance(Unknown Source) at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at
java.lang.reflect.Constructor.newInstance(Constructor.java:513) at
java.lang.Class.newInstance0(Class.java:355) at java.lang.Class.newInstance(Class.java:308) at
org.apache.ivy.util.Configurator.addChild(Configurator.java:586) at
org.apache.ivy.util.Configurator.startCreateChild(Configurator.java:503) at
org.apache.ivy.core.settings.XmlSettingsParser.inConfiguratorStarted(XmlSettingsParser.java:579) at
org.apache.ivy.core.settings.XmlSettingsParser.startElement(XmlSettingsParser.java:201) at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501) at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1363) at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2755) at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648) at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511) at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808) at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119) at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) at
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) 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:388) at
org.apache.ivy.core.settings.IvySettings$load.call(Unknown Source) at
groovy.grape.GrapeIvy.<init>(GrapeIvy.groovy:85) at
sun.reflect.GeneratedConstructorAccessor20.newInstance(Unknown Source) at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at
java.lang.reflect.Constructor.newInstance(Constructor.java:513) at
java.lang.Class.newInstance0(Class.java:355) at
java.lang.Class.newInstance(Class.java:308) at
groovy.grape.Grape.getInstance(Grape.java:101) at
groovy.grape.Grape.grab(Grape.java:136) at
groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:282) at
org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTransformationVisitor.java:397) ... 28 more
Caused by: java.lang.ClassNotFoundException: com.jcraft.jsch.JSchException at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at
java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 64 more
I'm getting the same issue. The stack trace (included below) indicates that Grapes in Eclipse is not able to find JSCH jars, which I have included in ~/.groovy/lib (so the script runs just fine). I'm not sure why Ivy is attempting to use the SSHResolver, as that's not part of the resolver chains... Thoughts on how to fix this?
EDIT: I'm using a custom ~/.groovy/grapeConfig.xml, which includes an ssh resolver (but as I said, it's not part of the resolver chain. The resolver chain includes a file system resolver and an http resolver), and I've got the following script:
Errors appear on both the import lines, indicating that the class cannot be found, but if I run the script (from inside Eclipse, even), it works just fine.