sam / doubleshot

Build and Dependency Management for mixed Java/Ruby projects.
MIT License
19 stars 22 forks source link

Tests fail if doubleshot.jar exists. #42

Closed sam closed 12 years ago

sam commented 12 years ago

Haven't figured it out yet, but currently tests fail if target/doubleshot.jar exists. Since part of --ci is to delete target/, then it'll work on the next attempt, fail on the one after, rinse, repeat.

If it's a problem in doubleshot.rb, then I think that might imply other projects may run into the same thing, so ideally we'd have a way to get past this that didn't depend on making the "just add a require("myproject.jar") to your myproject.rb file" requirement more complex.

ckrailo commented 12 years ago

@sam: Were these the errors you were getting?

 1) Error:
test_0002_must take a JarDependencyList and populate the path of each JarDependency(Doubleshot::Resolver::JarResolver::fetch):
Java::JavaLang::IllegalStateException: The super POM /org/apache/maven/model/pom-4.0.0.xml was not found, please verify the integrity of your Maven installation
    org.apache.maven.model.superpom.DefaultSuperPomProvider.getSuperModel(DefaultSuperPomProvider.java:66)
    org.apache.maven.model.building.DefaultModelBuilder.getSuperModel(DefaultModelBuilder.java:866)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:266)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:322)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:412)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
    org.sam.doubleshot.Aether.resolve(Aether.java:101)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:440)
    org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:304)
    org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:52)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.ast.BlockNode.interpret(BlockNode.java:71)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:75)
    org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182)
    org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:192)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:60)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112)
    org.jruby.runtime.Interpreted19Block.evalBlockBody(Interpreted19Block.java:209)
    org.jruby.runtime.Interpreted19Block.yield(Interpreted19Block.java:197)
    org.jruby.runtime.Interpreted19Block.call(Interpreted19Block.java:128)
    org.jruby.runtime.Block.call(Block.java:89)
    org.jruby.RubyProc.call(RubyProc.java:261)
    org.jruby.internal.runtime.methods.ProcMethod.call(ProcMethod.java:64)
    org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    org.jruby.RubyClass.finvoke(RubyClass.java:590)
    org.jruby.RubyBasicObject.send19(RubyBasicObject.java:1667)
    org.jruby.RubyBasicObject$INVOKER$i$send19.call(RubyBasicObject$INVOKER$i$send19.gen)
    org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:327)
    org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)

  2) Error:
test_0003_must populate transitive dependencies(Doubleshot::Resolver::JarResolver::fetch):
Java::JavaLang::IllegalStateException: The super POM /org/apache/maven/model/pom-4.0.0.xml was not found, please verify the integrity of your Maven installation
    org.apache.maven.model.superpom.DefaultSuperPomProvider.getSuperModel(DefaultSuperPomProvider.java:66)
    org.apache.maven.model.building.DefaultModelBuilder.getSuperModel(DefaultModelBuilder.java:866)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:266)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:322)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:412)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
    org.sam.doubleshot.Aether.resolve(Aether.java:101)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:440)
    org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:304)
    org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:52)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.ast.BlockNode.interpret(BlockNode.java:71)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:75)
    org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182)
    org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:192)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112)
    org.jruby.runtime.Interpreted19Block.evalBlockBody(Interpreted19Block.java:209)
    org.jruby.runtime.Interpreted19Block.yield(Interpreted19Block.java:197)
    org.jruby.runtime.Interpreted19Block.call(Interpreted19Block.java:128)
    org.jruby.runtime.Block.call(Block.java:89)
    org.jruby.RubyProc.call(RubyProc.java:261)
    org.jruby.internal.runtime.methods.ProcMethod.call(ProcMethod.java:64)
    org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    org.jruby.RubyClass.finvoke(RubyClass.java:590)
    org.jruby.RubyBasicObject.send19(RubyBasicObject.java:1667)
    org.jruby.RubyBasicObject$INVOKER$i$send19.call(RubyBasicObject$INVOKER$i$send19.gen)
    org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:327)
    org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)

  3) Error:
test_0001_must return the same JarDependencyList(Doubleshot::Resolver::JarResolver::fetch):
Java::JavaLang::IllegalStateException: The super POM /org/apache/maven/model/pom-4.0.0.xml was not found, please verify the integrity of your Maven installation
    org.apache.maven.model.superpom.DefaultSuperPomProvider.getSuperModel(DefaultSuperPomProvider.java:66)
    org.apache.maven.model.building.DefaultModelBuilder.getSuperModel(DefaultModelBuilder.java:866)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:266)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:322)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:412)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
    org.sam.doubleshot.Aether.resolve(Aether.java:101)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:440)
    org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:304)
    org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:52)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.ast.BlockNode.interpret(BlockNode.java:71)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:75)
    org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182)
    org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:192)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112)
    org.jruby.runtime.Interpreted19Block.evalBlockBody(Interpreted19Block.java:209)
    org.jruby.runtime.Interpreted19Block.yield(Interpreted19Block.java:197)
    org.jruby.runtime.Interpreted19Block.call(Interpreted19Block.java:128)
    org.jruby.runtime.Block.call(Block.java:89)
    org.jruby.RubyProc.call(RubyProc.java:261)
    org.jruby.internal.runtime.methods.ProcMethod.call(ProcMethod.java:64)
    org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    org.jruby.RubyClass.finvoke(RubyClass.java:590)
    org.jruby.RubyBasicObject.send19(RubyBasicObject.java:1667)
    org.jruby.RubyBasicObject$INVOKER$i$send19.call(RubyBasicObject$INVOKER$i$send19.gen)
    org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:327)
    org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)

155 tests, 204 assertions, 0 failures, 3 errors, 6 skips
Completed in 34.483s
sam commented 12 years ago

No. Bad Maven install? What if you mv ~/.m2 ~/.m2.old and try again?

ckrailo commented 12 years ago
➜  doubleshot git:(issue_42) ✗ mv ~/.m2 ~/.m2.old
➜  doubleshot git:(issue_42) ✗ bin/doubleshot test --ci

(test downloads the dependencies again and populates ~/.m2 again)

➜  doubleshot git:(issue_42) ✗ bin/doubleshot jar --no-test
Bootstrapping Doubleshot build with Maven...
NO GEMS IN LOCKFILE
[INFO] Using CLASSPATH: /Users/ckrailo/.m2/repository/com/ning/async-http-client/1.6.5, /Users/ckrailo/.m2/repository/commons-codec/commons-codec/1.4, /Users/ckrailo/.m2/repository/commons-io/commons-io/2.0.1, /Users/ckrailo/.m2/repository/commons-logging/commons-logging/1.1.1, /Users/ckrailo/.m2/repository/org/apache/httpcomponents/httpclient/4.1.2, /Users/ckrailo/.m2/repository/org/apache/httpcomponents/httpcore/4.1.2, /Users/ckrailo/.m2/repository/org/apache/maven/maven-aether-provider/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/maven-model/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/maven-model-builder/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/maven-repository-metadata/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-file/2.2, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-http/2.2, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-http-shared4/2.2, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-provider-api/2.2, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-classworlds/2.4, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-utils/2.0.7, /Users/ckrailo/.m2/repository/org/jboss/netty/netty/3.2.5.Final, /Users/ckrailo/.m2/repository/org/jsoup/jsoup/1.6.1, /Users/ckrailo/.m2/repository/org/slf4j/slf4j-api/1.6.2, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-api/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-connector-asynchttpclient/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-connector-file/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-connector-wagon/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-impl/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-spi/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-util/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/sisu/sisu-guice/3.0.3, /Users/ckrailo/.m2/repository/org/sonatype/sisu/sisu-inject-bean/2.2.3, /Users/ckrailo/.m2/repository/org/sonatype/sisu/sisu-inject-plexus/2.2.3

Compiling...
Compiling 3 source files to /Users/ckrailo/projects/doubleshot/target
Building jar: /Users/ckrailo/projects/doubleshot/target/doubleshot.jar
➜  doubleshot git:(issue_42) ✗ bin/doubleshot test --ci    
--ci: Removing lockfile
--ci: Removing .classpath.cache
--ci: Removing target build directory

 --- Running all tests ---

Bootstrapping Doubleshot build with Maven...
[INFO] Using CLASSPATH: /Users/ckrailo/.m2/repository/com/ning/async-http-client/1.6.5, /Users/ckrailo/.m2/repository/commons-codec/commons-codec/1.4, /Users/ckrailo/.m2/repository/commons-io/commons-io/2.0.1, /Users/ckrailo/.m2/repository/commons-logging/commons-logging/1.1.1, /Users/ckrailo/.m2/repository/org/apache/httpcomponents/httpclient/4.1.2, /Users/ckrailo/.m2/repository/org/apache/httpcomponents/httpcore/4.1.2, /Users/ckrailo/.m2/repository/org/apache/maven/maven-aether-provider/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/maven-model/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/maven-model-builder/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/maven-repository-metadata/3.0.4, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-file/2.2, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-http/2.2, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-http-shared4/2.2, /Users/ckrailo/.m2/repository/org/apache/maven/wagon/wagon-provider-api/2.2, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-classworlds/2.4, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14, /Users/ckrailo/.m2/repository/org/codehaus/plexus/plexus-utils/2.0.7, /Users/ckrailo/.m2/repository/org/jboss/netty/netty/3.2.5.Final, /Users/ckrailo/.m2/repository/org/jsoup/jsoup/1.6.1, /Users/ckrailo/.m2/repository/org/slf4j/slf4j-api/1.6.2, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-api/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-connector-asynchttpclient/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-connector-file/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-connector-wagon/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-impl/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-spi/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/aether/aether-util/1.13.1, /Users/ckrailo/.m2/repository/org/sonatype/sisu/sisu-guice/3.0.3, /Users/ckrailo/.m2/repository/org/sonatype/sisu/sisu-inject-bean/2.2.3, /Users/ckrailo/.m2/repository/org/sonatype/sisu/sisu-inject-plexus/2.2.3

Compiling...
Compiling 3 source files to /Users/ckrailo/projects/doubleshot/target
NO GEMS IN LOCKFILE
Run options: --seed 9139

# Running tests:

.Compiling 1 source file to /Users/ckrailo/projects/doubleshot/tmp/target
...Compiling 1 source file to /Users/ckrailo/projects/doubleshot/tmp/target
.Compiling 1 source file to /Users/ckrailo/projects/doubleshot/tmp/target
...Compiling 1 source file to /Users/ckrailo/projects/doubleshot/tmp/target
................................................................................................................................EEE..........

Fabulous tests in 13.973000s, 11.0928 tests/s, 14.5996 assertions/s.

  1) Error:
test_0001_must return the same JarDependencyList(Doubleshot::Resolver::JarResolver::fetch):
Java::JavaLang::IllegalStateException: The super POM /org/apache/maven/model/pom-4.0.0.xml was not found, please verify the integrity of your Maven installation
    org.apache.maven.model.superpom.DefaultSuperPomProvider.getSuperModel(DefaultSuperPomProvider.java:66)
    org.apache.maven.model.building.DefaultModelBuilder.getSuperModel(DefaultModelBuilder.java:866)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:266)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:322)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:412)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
    org.sam.doubleshot.Aether.resolve(Aether.java:101)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:440)
    org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:304)
    org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:52)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.ast.BlockNode.interpret(BlockNode.java:71)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:75)
    org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182)
    org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:192)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112)
    org.jruby.runtime.Interpreted19Block.evalBlockBody(Interpreted19Block.java:209)
    org.jruby.runtime.Interpreted19Block.yield(Interpreted19Block.java:197)
    org.jruby.runtime.Interpreted19Block.call(Interpreted19Block.java:128)
    org.jruby.runtime.Block.call(Block.java:89)
    org.jruby.RubyProc.call(RubyProc.java:261)
    org.jruby.internal.runtime.methods.ProcMethod.call(ProcMethod.java:64)
    org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    org.jruby.RubyClass.finvoke(RubyClass.java:590)
    org.jruby.RubyBasicObject.send19(RubyBasicObject.java:1667)
    org.jruby.RubyBasicObject$INVOKER$i$send19.call(RubyBasicObject$INVOKER$i$send19.gen)
    org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:327)
    org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)

  2) Error:
test_0002_must take a JarDependencyList and populate the path of each JarDependency(Doubleshot::Resolver::JarResolver::fetch):
Java::JavaLang::IllegalStateException: The super POM /org/apache/maven/model/pom-4.0.0.xml was not found, please verify the integrity of your Maven installation
    org.apache.maven.model.superpom.DefaultSuperPomProvider.getSuperModel(DefaultSuperPomProvider.java:66)
    org.apache.maven.model.building.DefaultModelBuilder.getSuperModel(DefaultModelBuilder.java:866)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:266)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:322)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:412)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
    org.sam.doubleshot.Aether.resolve(Aether.java:101)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:440)
    org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:304)
    org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:52)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.ast.BlockNode.interpret(BlockNode.java:71)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:75)
    org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182)
    org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:192)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:60)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112)
    org.jruby.runtime.Interpreted19Block.evalBlockBody(Interpreted19Block.java:209)
    org.jruby.runtime.Interpreted19Block.yield(Interpreted19Block.java:197)
    org.jruby.runtime.Interpreted19Block.call(Interpreted19Block.java:128)
    org.jruby.runtime.Block.call(Block.java:89)
    org.jruby.RubyProc.call(RubyProc.java:261)
    org.jruby.internal.runtime.methods.ProcMethod.call(ProcMethod.java:64)
    org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    org.jruby.RubyClass.finvoke(RubyClass.java:590)
    org.jruby.RubyBasicObject.send19(RubyBasicObject.java:1667)
    org.jruby.RubyBasicObject$INVOKER$i$send19.call(RubyBasicObject$INVOKER$i$send19.gen)
    org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:327)
    org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)

  3) Error:
test_0003_must populate transitive dependencies(Doubleshot::Resolver::JarResolver::fetch):
Java::JavaLang::IllegalStateException: The super POM /org/apache/maven/model/pom-4.0.0.xml was not found, please verify the integrity of your Maven installation
    org.apache.maven.model.superpom.DefaultSuperPomProvider.getSuperModel(DefaultSuperPomProvider.java:66)
    org.apache.maven.model.building.DefaultModelBuilder.getSuperModel(DefaultModelBuilder.java:866)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:266)
    org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:322)
    org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:186)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:412)
    org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
    org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
    org.sam.doubleshot.Aether.resolve(Aether.java:101)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(JavaMethod.java:440)
    org.jruby.javasupport.JavaMethod.invokeDirect(JavaMethod.java:304)
    org.jruby.java.invokers.InstanceMethodInvoker.call(InstanceMethodInvoker.java:52)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:134)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.ast.BlockNode.interpret(BlockNode.java:71)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:75)
    org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:182)
    org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:192)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:64)
    org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57)
    org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105)
    org.jruby.evaluator.ASTInterpreter.INTERPRET_BLOCK(ASTInterpreter.java:112)
    org.jruby.runtime.Interpreted19Block.evalBlockBody(Interpreted19Block.java:209)
    org.jruby.runtime.Interpreted19Block.yield(Interpreted19Block.java:197)
    org.jruby.runtime.Interpreted19Block.call(Interpreted19Block.java:128)
    org.jruby.runtime.Block.call(Block.java:89)
    org.jruby.RubyProc.call(RubyProc.java:261)
    org.jruby.internal.runtime.methods.ProcMethod.call(ProcMethod.java:64)
    org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
    org.jruby.RubyClass.finvoke(RubyClass.java:590)
    org.jruby.RubyBasicObject.send19(RubyBasicObject.java:1667)
    org.jruby.RubyBasicObject$INVOKER$i$send19.call(RubyBasicObject$INVOKER$i$send19.gen)
    org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:327)
    org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61)
    org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:326)
    org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:170)

155 tests, 204 assertions, 0 failures, 3 errors, 6 skips
Completed in 29.475s

Looks like the same error again.

ckrailo commented 12 years ago

Fairly sure this is a case of "using doubleshot to build doubleshot".

With my changes, if we make sure that our good JAR isn't in target/, then we won't get any of these errors. This also means that we'd need to update it manually, but I think that's an acceptable price to pay to get a fix out quickly without making code more complex.

Also included in this pull request is a fix for the --ci test option to make sure the exit status continues to get passed through. I had broke it with with the pidfile updates.

sam commented 12 years ago

That sounds fair. Bootstrapping isn't a philosophy or anything. Just seemed convenient. If Doubleshot itself has a slightly different build process, as long as it's well documented, it's like, whatever man.