Hi,

The copy of joda-time embedded in the jruby.jar seems to be broken.
Rebuilding jruby with a non-broken joda-time shoud fix the issue.



When trying to run this bsh script:

 echo "System.out.println(org.joda.time.DateTimeZone.getDefault());"

with Jruby, I get the same error:

$ bsh -classpath /usr/share/java/jruby.jar script.bsh
BeanShell 2.0b4 - by Pat Niemeyer (p...@pat.net)
bsh % System.out.println(org.joda.time.DateTimeZone.getDefault());
Exception in thread "main" java.io.EOFException
        at java.io.DataInputStream.readFully(DataInputStream.java:197)
        at java.io.DataInputStream.readUTF(DataInputStream.java:609)
        at java.io.DataInputStream.readUTF(DataInputStream.java:564)
        at
org.joda.time.tz.ZoneInfoProvider.readZoneInfoMap(ZoneInfoProvider.java:278)
        at
org.joda.time.tz.ZoneInfoProvider.loadZoneInfoMap(ZoneInfoProvider.java:256)
[...]
UTC



But with joda time, it works as expected:

$ bsh -classpath /usr/share/java/jruby.jar
Europe/Paris



For some reason the "ZoneInfoMap" file seems to be broken in the
copy of joda-time embedded in jruby.



As a quickfix, I added joda-time in the classpath in /usr/bin/jruby,

exec "$JAVA_CMD" $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}"
-Xbootclasspath/a:"/usr/share/java/joda-time.jar:$JRUBY_CP" -classpath
"$CP$CP_DELIMITER$CLASSPATH"

and now jruby works as expected:

$ jruby -S gem
RubyGems is a sophisticated package manager for Ruby.  This is a
basic help message containing pointers to more information.



Cheers.

-- 
Gabriel

__
This is the maintainer address of Debian's Java team
<http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers>. 
Please use
debian-j...@lists.debian.org for discussions and questions.

Reply via email to