Failure when building Mirah

22 views
Skip to first unread message

Robert Fischer

unread,
Jan 27, 2012, 10:28:30 AM1/27/12
to The Mirah Programming Language
I'm trying to build the Mirah jars according to the README, and I'm
getting the below error when I execute "rake jar". It's the ever-
annoying NPE. Any clue what's up?

rake aborted!
java.lang.NullPointerException: null
org/jruby/RubyClass.java:164:in `setRubyClassAllocator'
sun/reflect/NativeMethodAccessorImpl.java:-2:in `invoke0'
sun/reflect/NativeMethodAccessorImpl.java:39:in `invoke'
sun/reflect/DelegatingMethodAccessorImpl.java:25:in `invoke'
java/lang/reflect/Method.java:597:in `invoke'
org/jruby/javasupport/JavaMethod.java:530:in
`invokeDirectWithExceptionHandling'
org/jruby/javasupport/JavaMethod.java:385:in `invokeDirect'
org/jruby/java/invokers/InstanceMethodInvoker.java:59:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:167:in `call'
org/jruby/ast/CallOneArgNode.java:57:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:255:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:223:in `call'
org/jruby/runtime/callsite/SuperCallSite.java:386:in `cacheAndCall'
org/jruby/runtime/callsite/SuperCallSite.java:238:in `callBlock'
org/jruby/runtime/callsite/SuperCallSite.java:243:in `call'
org/jruby/runtime/callsite/SuperCallSite.java:109:in `callVarargs'
org/jruby/ast/SuperNode.java:114:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:298:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:239:in `call'
org/jruby/runtime/callsite/SuperCallSite.java:406:in `cacheAndCall'
org/jruby/runtime/callsite/SuperCallSite.java:284:in `callBlock'
org/jruby/runtime/callsite/SuperCallSite.java:289:in `call'
org/jruby/runtime/callsite/SuperCallSite.java:110:in `callVarargs'
org/jruby/ast/SuperNode.java:114:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:212:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:207:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:322:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:178:in `callBlock'
org/jruby/runtime/callsite/CachingCallSite.java:182:in `call'
org/jruby/RubyClass.java:817:in `newInstance'
org/jruby/RubyClass$INVOKER$i$newInstance.gen:65535:in `call'
org/jruby/internal/runtime/methods/JavaMethod.java:273:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/CallOneArgNode.java:57:in `interpret'
org/jruby/ast/ConstDeclNode.java:97:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:104:in `INTERPRET_CLASS'
org/jruby/evaluator/ASTInterpreter.java:272:in
`evalClassDefinitionBody'
org/jruby/ast/ClassNode.java:138:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:104:in `INTERPRET_CLASS'
org/jruby/evaluator/ASTInterpreter.java:272:in
`evalClassDefinitionBody'
org/jruby/ast/ModuleNode.java:120:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:104:in `INTERPRET_CLASS'
org/jruby/evaluator/ASTInterpreter.java:272:in
`evalClassDefinitionBody'
org/jruby/ast/ModuleNode.java:120:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:104:in `INTERPRET_CLASS'
org/jruby/evaluator/ASTInterpreter.java:272:in
`evalClassDefinitionBody'
org/jruby/ast/ModuleNode.java:120:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/RootNode.java:129:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:120:in `INTERPRET_ROOT'
org/jruby/Ruby.java:781:in `runInterpreter'
org/jruby/Ruby.java:2562:in `loadFile'
org/jruby/runtime/load/ExternalScript.java:66:in `load'
org/jruby/runtime/load/LoadService.java:868:in
`tryLoadingLibraryOrScript'
org/jruby/runtime/load/LoadService.java:510:in `smartLoadInternal'
org/jruby/runtime/load/LoadService.java:394:in `requireCommon'
org/jruby/runtime/load/LoadService.java:358:in `require'
org/jruby/RubyKernel.java:978:in `requireCommon'
org/jruby/RubyKernel.java:961:in `require'
org/jruby/RubyKernel$INVOKER$s$1$0$require.gen:65535:in `call'
org/jruby/internal/runtime/methods/JavaMethod.java:326:in `call'
org/jruby/internal/runtime/methods/AliasMethod.java:61:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:167:in `call'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:36:in `chained_0_rescue_1$RUBY
$SYNTHETIC__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
org/jruby/internal/runtime/methods/JittedMethod.java:181:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/FCallOneArgNode.java:36:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/ast/RootNode.java:129:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:120:in `INTERPRET_ROOT'
org/jruby/Ruby.java:781:in `runInterpreter'
org/jruby/Ruby.java:2562:in `loadFile'
org/jruby/runtime/load/ExternalScript.java:66:in `load'
org/jruby/runtime/load/LoadService.java:868:in
`tryLoadingLibraryOrScript'
org/jruby/runtime/load/LoadService.java:510:in `smartLoadInternal'
org/jruby/runtime/load/LoadService.java:394:in `requireCommon'
org/jruby/runtime/load/LoadService.java:358:in `require'
org/jruby/RubyKernel.java:978:in `requireCommon'
org/jruby/RubyKernel.java:961:in `require'
org/jruby/RubyKernel$INVOKER$s$1$0$require.gen:65535:in `call'
org/jruby/internal/runtime/methods/JavaMethod.java:326:in `call'
org/jruby/internal/runtime/methods/AliasMethod.java:61:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:167:in `call'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:36:in `chained_0_rescue_1$RUBY
$SYNTHETIC__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
org/jruby/internal/runtime/methods/JittedMethod.java:181:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/FCallOneArgNode.java:36:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/ast/RootNode.java:129:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:120:in `INTERPRET_ROOT'
org/jruby/Ruby.java:781:in `runInterpreter'
org/jruby/Ruby.java:2562:in `loadFile'
org/jruby/runtime/load/ExternalScript.java:66:in `load'
org/jruby/runtime/load/LoadService.java:868:in
`tryLoadingLibraryOrScript'
org/jruby/runtime/load/LoadService.java:510:in `smartLoadInternal'
org/jruby/runtime/load/LoadService.java:394:in `requireCommon'
org/jruby/runtime/load/LoadService.java:358:in `require'
org/jruby/RubyKernel.java:978:in `requireCommon'
org/jruby/RubyKernel.java:961:in `require'
org/jruby/RubyKernel$INVOKER$s$1$0$require.gen:65535:in `call'
org/jruby/internal/runtime/methods/JavaMethod.java:326:in `call'
org/jruby/internal/runtime/methods/AliasMethod.java:61:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:167:in `call'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:36:in `chained_0_rescue_1$RUBY
$SYNTHETIC__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
org/jruby/internal/runtime/methods/JittedMethod.java:181:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/FCallOneArgNode.java:36:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/ast/RootNode.java:129:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:120:in `INTERPRET_ROOT'
org/jruby/Ruby.java:781:in `runInterpreter'
org/jruby/Ruby.java:2562:in `loadFile'
org/jruby/runtime/load/ExternalScript.java:66:in `load'
org/jruby/runtime/load/LoadService.java:868:in
`tryLoadingLibraryOrScript'
org/jruby/runtime/load/LoadService.java:510:in `smartLoadInternal'
org/jruby/runtime/load/LoadService.java:394:in `requireCommon'
org/jruby/runtime/load/LoadService.java:358:in `require'
org/jruby/RubyKernel.java:978:in `requireCommon'
org/jruby/RubyKernel.java:961:in `require'
org/jruby/RubyKernel$INVOKER$s$1$0$require.gen:65535:in `call'
org/jruby/internal/runtime/methods/JavaMethod.java:326:in `call'
org/jruby/internal/runtime/methods/AliasMethod.java:61:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:167:in `call'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:36:in `chained_0_rescue_1$RUBY
$SYNTHETIC__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
rubyjit//Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/
ruby/shared/rubygems/custom_require.rb:-1:in `__file__'
org/jruby/internal/runtime/methods/JittedMethod.java:181:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/FCallOneArgNode.java:36:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/ast/RootNode.java:129:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:120:in `INTERPRET_ROOT'
org/jruby/Ruby.java:781:in `runInterpreter'
org/jruby/Ruby.java:2562:in `loadFile'
org/jruby/runtime/load/ExternalScript.java:66:in `load'
org/jruby/runtime/load/LoadService.java:304:in `load'
org/jruby/RubyKernel.java:1004:in `loadCommon'
org/jruby/RubyKernel.java:986:in `load'
org/jruby/RubyKernel$INVOKER$s$0$1$load.gen:65535:in `call'
org/jruby/internal/runtime/methods/DynamicMethod.java:216:in `call'
org/jruby/internal/runtime/methods/DynamicMethod.java:212:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/FCallOneArgNode.java:36:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:190:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:199:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:312:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:169:in `call'
org/jruby/ast/CallOneArgNode.java:57:in `interpret'
org/jruby/ast/IfNode.java:117:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/ast/IfNode.java:119:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:147:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:183:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:292:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:135:in `call'
org/jruby/ast/VCallNode.java:86:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:112:in `INTERPRET_BLOCK'
org/jruby/runtime/InterpretedBlock.java:374:in `evalBlockBody'
org/jruby/runtime/InterpretedBlock.java:295:in `yield'
org/jruby/runtime/InterpretedBlock.java:229:in `yieldSpecific'
org/jruby/runtime/Block.java:99:in `yieldSpecific'
org/jruby/ast/ZYieldNode.java:25:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/RescueNode.java:216:in `executeBody'
org/jruby/ast/RescueNode.java:120:in `interpretWithJavaExceptions'
org/jruby/ast/RescueNode.java:110:in `interpret'
org/jruby/ast/BeginNode.java:83:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:169:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:191:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:302:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:144:in `callBlock'
org/jruby/runtime/callsite/CachingCallSite.java:153:in `callIter'
org/jruby/ast/FCallNoArgBlockNode.java:32:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:147:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:183:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:292:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:135:in `call'
org/jruby/ast/VCallNode.java:86:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/BlockNode.java:71:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:112:in `INTERPRET_BLOCK'
org/jruby/runtime/InterpretedBlock.java:374:in `evalBlockBody'
org/jruby/runtime/InterpretedBlock.java:295:in `yield'
org/jruby/runtime/InterpretedBlock.java:229:in `yieldSpecific'
org/jruby/runtime/Block.java:99:in `yieldSpecific'
org/jruby/ast/ZYieldNode.java:25:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/ast/RescueNode.java:216:in `executeBody'
org/jruby/ast/RescueNode.java:120:in `interpretWithJavaExceptions'
org/jruby/ast/RescueNode.java:110:in `interpret'
org/jruby/ast/BeginNode.java:83:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:169:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:191:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:302:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:144:in `callBlock'
org/jruby/runtime/callsite/CachingCallSite.java:153:in `callIter'
org/jruby/ast/FCallNoArgBlockNode.java:32:in `interpret'
org/jruby/ast/NewlineNode.java:104:in `interpret'
org/jruby/evaluator/ASTInterpreter.java:75:in `INTERPRET_METHOD'
org/jruby/internal/runtime/methods/InterpretedMethod.java:147:in
`call'
org/jruby/internal/runtime/methods/DefaultMethod.java:183:in `call'
org/jruby/runtime/callsite/CachingCallSite.java:292:in `cacheAndCall'
org/jruby/runtime/callsite/CachingCallSite.java:135:in `call'
usr/bin//usr/bin/rake:31:in `__file__'
usr/bin//usr/bin/rake:-1:in `load'
org/jruby/Ruby.java:754:in `runScript'
org/jruby/Ruby.java:747:in `runScript'
org/jruby/Ruby.java:638:in `runNormally'
org/jruby/Ruby.java:487:in `runFromMain'
org/jruby/Main.java:350:in `doRunFromMain'
org/jruby/Main.java:262:in `internalRun'
org/jruby/Main.java:228:in `run'
org/jruby/Main.java:212:in `run'
org/jruby/Main.java:192:in `main'
java/lang/reflect/Method.java:597:in `invoke'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
ast.rb:64:in `initialize'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
ast.rb:402:in `initialize'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/type.rb:21:in `initialize'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/dynamic_type.rb:5:in `DynamicType'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/dynamic_type.rb:4:in `Types'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/dynamic_type.rb:3:in `JVM'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/dynamic_type.rb:2:in `Mirah'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/dynamic_type.rb:1:in `(root)'
org/jruby/RubyKernel.java:961:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/ruby/
shared/rubygems/custom_require.rb:36:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types/dynamic_type.rb:28:in `(root)'
org/jruby/RubyKernel.java:961:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/ruby/
shared/rubygems/custom_require.rb:36:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/types.rb:19:in `(root)'
org/jruby/RubyKernel.java:961:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/ruby/
shared/rubygems/custom_require.rb:36:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah/
jvm/compiler.rb:31:in `(root)'
org/jruby/RubyKernel.java:961:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/jruby/lib/ruby/
shared/rubygems/custom_require.rb:36:in `require'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/lib/mirah.rb:
22:in `(root)'
org/jruby/RubyKernel.java:986:in `load'
/Users/robert/wkdir/Gradle-Mirah-Compiler/externals/mirah/Rakefile:
25:in `load_rakefile'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:501:in
`raw_load_rakefile'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:82:in
`load_rakefile'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:133:in
`standard_exception_handling'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:81:in
`load_rakefile'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:65:in
`run'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:133:in
`standard_exception_handling'
/Users/robert/.gem/gems/rake-0.9.2.2/lib/rake/application.rb:63:in
`run'
/usr/bin/rake:31:in `(root)'
usr/bin//usr/bin/rake:-1:in `load'

Keith Swallow

unread,
Jan 27, 2012, 12:44:11 PM1/27/12
to mi...@googlegroups.com
Hi Robert,

I was able to build Mirah successfully using rake 0.9.2.2 and JRuby 1.6.5. I installed JRuby via RVM. Before building mirah I bundled it up and ran the tests. I got a couple warnings and I have mirah.jar in my dist folder.

mirah|master@f7c5bee ⚡
$ rake jar
jruby-1.6.5
mkdir -p dist
mkdir -p build
Compiling Ruby sources
build/org/mirah/MirahCommand.java:10: '.' expected
import System;
^
build/org/mirah/MirahCommand.java:10: ';' expected
import System;
^
2 errors
Compiling Mirah sources
Parsing...
org/mirah/class_loader.mirah
org/mirah/ant/compile.mirah
duby/lang/compiler/interfaces.duby
mirah/impl/builtins.mirah
Inferring types...
Compiling...
org/mirah/class_loader.mirah
org/mirah/ant/compile.mirah
duby/lang/compiler/interfaces.duby
mirah/impl/builtins.mirah
Done!
/Users/keith/Development/mirah/Rakefile:137: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
Building jar: /Users/keith/Development/mirah/dist/mirah.jar

mirah|master@f7c5bee ⚡
$ gem list jruby-1.6.5

*** LOCAL GEMS ***

bitescript (0.0.9)
bouncy-castle-java (1.5.0146.1)
bundler (1.0.21 ruby)
jruby-launcher (1.0.9 java)
jruby-openssl (0.7.4)
mirah (0.0.10 java)
rake (0.9.2.2, 0.9.2, 0.8.7)
sources (0.0.1)

Cheers,

Keith

consiliens

unread,
Jan 27, 2012, 12:44:36 PM1/27/12
to mi...@googlegroups.com
I just built the latest Mirah on linux and found a different error:

mkdir -p build
Compiling Ruby sources

MirahCommand.java:10: '.' expected
import System;
^

MirahCommand.java:10: ';' expected
import System;
^
2 errors

Rake jar did complete though and the resulting gem seems to work fine.
Are you using the latest JRuby release (1.6.5.1)? I'm not sure how
well tested building Mirah on windows is.

Robert Fischer

unread,
Jan 27, 2012, 12:48:26 PM1/27/12
to mi...@googlegroups.com
I'm on ruby-1.8.7-p357 — building it in a sibling directory as per the
README's instructions.

~~ Robert.
Science tells us we are merely beasts, but we don't feel like that. We
feel like angels trapped inside the bodies of beasts, forever craving
transcendence.
(VS Ramachandran, cognitive neuroscientist)

consiliens

unread,
Jan 27, 2012, 12:52:17 PM1/27/12
to mi...@googlegroups.com
I'm pretty sure you need JRuby to build Mirah. I opened an issue
about the MirahCommand build errors.
https://github.com/mirah/mirah/issues/162

On Fri, Jan 27, 2012 at 10:48 AM, Robert Fischer

Robert Fischer

unread,
Jan 27, 2012, 12:57:14 PM1/27/12
to mi...@googlegroups.com
Should I submit a ticket to fix the README, then?

~~ Robert.
Science tells us we are merely beasts, but we don't feel like that. We
feel like angels trapped inside the bodies of beasts, forever craving
transcendence.
(VS Ramachandran, cognitive neuroscientist)

consiliens

unread,
Jan 27, 2012, 1:01:24 PM1/27/12
to mi...@googlegroups.com
The README is correct.

"== REQUIREMENTS:

* JRuby 1.6.0 or higher."

The commands I used to build Mirah are directly from the readme.
https://gist.github.com/1690042

On Fri, Jan 27, 2012 at 10:57 AM, Robert Fischer

Robert Fischer

unread,
Jan 27, 2012, 1:06:54 PM1/27/12
to mi...@googlegroups.com
Ah — there's the confusion. I'm building the JARs to packaging Mirah
up into a project. So I'm following these directions:

== For Java tools:

To build the Mirah jars from source you should have a checkout of both jruby and
bitescript in Mirah's parent directory. Run "ant jar-complete" in jruby, then in
the mirah directory "../jruby/bin/jruby -S rake jar" to build the Mirah jar. Use
"jar:complete" instead to produce a free-standing jar file with JRuby and the
JRubyParser libraries included.

~~ Robert.
Science tells us we are merely beasts, but we don't feel like that. We
feel like angels trapped inside the bodies of beasts, forever craving
transcendence.
(VS Ramachandran, cognitive neuroscientist)

consiliens

unread,
Jan 27, 2012, 1:24:19 PM1/27/12
to mi...@googlegroups.com
I replied at nearly the same time and didn't see your post. It's good
to know Mirah builds correctly on windows.

consiliens

unread,
Jan 27, 2012, 1:29:31 PM1/27/12
to mi...@googlegroups.com
The directions are likely correct. The code on master sometimes
contains errors that prevent building.

With JDK 1.6.0_30, running ant jar-complete fails with:

jar-jruby-complete:
[java] ByteList.java:1375:in `setEncoding': java.lang.AssertionError
[java] from RubyString.java:420:in `<init>'

I think that's a JRuby bug.

On Fri, Jan 27, 2012 at 11:06 AM, Robert Fischer

Robert Fischer

unread,
Jan 27, 2012, 1:47:02 PM1/27/12
to mi...@googlegroups.com
Building off the JRUBY_1_6_5 branch works just fine. It's a problem in
JRuby HEAD, methinks.

Sorry for the false alarm.

~~ Robert.
Science tells us we are merely beasts, but we don't feel like that. We
feel like angels trapped inside the bodies of beasts, forever craving
transcendence.
(VS Ramachandran, cognitive neuroscientist)

consiliens

unread,
Jan 27, 2012, 1:54:18 PM1/27/12
to mi...@googlegroups.com
jruby-dist-master is currently red on http://ci.jruby.org. The
released JRuby 1.6.5.1 fails with "java.lang.IllegalArgumentException:
URI is not hierarchical" when running "rake jar".

The readme has been out of date since 2010. Bitescript is loaded from
a gem and jruby-complete is bundled with Mirah. I opened issue 163.
https://github.com/mirah/mirah/issues/163

On Fri, Jan 27, 2012 at 11:47 AM, Robert Fischer

Reply all
Reply to author
Forward
0 new messages