Can't load and run the scripts (like gem or irb) from the jruby-complete.jar ----------------------------------------------------------------------------
Key: JRUBY-6066 URL: https://jira.codehaus.org/browse/JRUBY-6066 Project: JRuby Issue Type: Bug Components: Launcher Affects Versions: JRuby 1.6.4 Environment: OS X 10.7 java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11A511) Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-383, mixed mode) Reporter: Thomas Dudziak Assignee: Thomas E Enebo I am trying to find a way to run all jruby scripts with only java and the jruby-complete jar but that doesn't seem to work. For testing, I put a dummy 'gem' script into the PATH before the system's ruby one: $ cat /usr/local/bin/gem #!/bin/bash echo "No gem" $ gem No gem I then tried different approaches to execute the gem script within the JAR: $ java -jar jruby-complete-1.6.4.jar -S gem env NoMethodError: undefined method `echo' for main:Object (root) at /usr/local/bin/gem:2 $ java -jar jruby-complete-1.6.4.jar -S 'file:jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem' env SyntaxError: file:jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem:1: no .<digit> floating literal anymore; put 0 before dotJRuby::Commands.file:jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem $ java -jar jruby-complete-1.6.4.jar -S 'file://jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem' env SyntaxError: file://jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem:1: no .<digit> floating literal anymore; put 0 before dotJRuby::Commands.file://jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem $ java -jar jruby-complete-1.6.4.jar 'file://jruby-complete-1.6.4.jar!/META-INF/jruby.home/bin/gem' env Error opening script file: jruby-complete-1.6.4.jar $ java -Djruby.home=jruby-complete-1.6.4.jar -jar jruby-complete-1.6.4.jar -S gem env NoMethodError: undefined method `echo' for main:Object (root) at /usr/local/bin/gem:2 $ java '-Djruby.home=file:jruby-complete-1.6.4.jar' -jar jruby-complete-1.6.4.jar -S gem env NoMethodError: undefined method `echo' for main:Object (root) at /usr/local/bin/gem:2 $ java '-Djruby.home=file://jruby-complete-1.6.4.jar' -jar jruby-complete-1.6.4.jar -S gem env NoMethodError: undefined method `echo' for main:Object (root) at /usr/local/bin/gem:2 The problem might be that RubyInstanceConfig.resolveScript does not actually check for jars before using JRubyFile.create despite the comment at the beginning of the file indicating otherwise. E.g. the second case matches my attempts to use jruby.home but fails with JRubyFile.create not supporting jars as the comment rightly points out. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email