Errors when attempting to require and use a gem packaged as a Jar file
----------------------------------------------------------------------
Key: JRUBY-3487
URL: http://jira.codehaus.org/browse/JRUBY-3487
Project: JRuby
Issue Type: Bug
Affects Versions: JRuby 1.2
Reporter: Roy Tinker
Assignee: Thomas E Enebo
Priority: Minor
Fix For: JRuby 1.2
I am trying to follow Nick Sieger's instructions for packaging and using gems
as Jar files at:
http://blog.nicksieger.com/articles/2009/01/10/jruby-1-1-6-gems-in-a-jar, but I
am running into problems.
Here is a transcript of my session, with comments denoted by {{REM}}:
{{
REM -- installing chronic to the ./chronic directory
F:\jruby>java -jar jruby-complete-1.2.0RC2.jar -S gem install -i ./chronic
chronic --no-rdoc --no-ri
JRuby limited openssl loaded. gem install jruby-openssl for full support.
http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
Successfully installed rubyforge-1.0.3
Successfully installed rake-0.8.4
Successfully installed hoe-1.10.0
Successfully installed chronic-0.2.3
4 gems installed
REM -- making a Jar from the chronic directory
F:\jruby>jar cf chronic-gem.jar -C chronic .
REM -- running IRB, will try to use chronic now
F:\jruby>java -jar jruby-complete-1.2.0RC2.jar -rchronic-gem.jar -S irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'chronic'
LoadError: no such file to load -- chronic
from
file:/F:/jruby/jruby-complete-1.2.0RC2.jar!/META-INF/jruby.home/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`require'
from
file:/F:/jruby/jruby-complete-1.2.0RC2.jar!/META-INF/jruby.home/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`require'
from (irb):3
irb(main):003:0> Chronic
NameError: uninitialized constant Chronic
from
file:/F:/jruby/jruby-complete-1.2.0RC2.jar!/irb/ruby-token.rb:102:in
`const_missing'
from (irb):4:in `irb_binding'
Maybe IRB bug!!
irb(main):004:0> exit
REM -- ok, let's try requiring the jar explicitly
F:\jruby>java -jar jruby-complete-1.2.0RC2.jar -e "require 'chronic-gem.jar';
chr = Chronic.new"
:1:in `const_missing': uninitialized constant Chronic (NameError)
from -e:1
REM -- try again, but require rubygems first
F:\jruby>java -jar jruby-complete-1.2.0RC2.jar -e "require 'rubygems'; require
'chronic-gem.jar'; chr = Chronic.new"
file:/F:/jruby/jruby-complete-1.2.0RC2.jar!/META-INF/jruby.home/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`const_missing': uninitialized constant Chronic (NameError)
from -e:1
}}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
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