2011-02-07 5 views
1

Windows XPマシンにJRuby 1.6.0をインストールしました。私はGoogleのgdataライブラリもダウンロードしました。このコード:WindowsのJRubyとCLASSPATH

require "java" 
$CLASSPATH << "D:\\javalib\\gdata\\java\\lib\\*" 
include_class "com.google.gdata.client.docs" 

は、このエラーを与える:

org/jruby/javasupport/JavaClass.java:1052:in `for_name': cannot load Java class 
com.google.gdata.client.docs (NameError) 
     from org/jruby/javasupport/JavaUtilities.java:34:in `get_proxy_class' 
     from C:/jruby-1.6.0.RC1/lib/ruby/site_ruby/shared/builtin/javasupport/co 
re_ext/object.rb:46:in `java_import' 
     from C:/jruby-1.6.0.RC1/lib/ruby/site_ruby/shared/builtin/javasupport/co 
re_ext/object.rb:26:in `include_class' 
     from download_gdocs.rb:5:in `(root)' 

では、Google GDATAのJavaライブラリはD:\javalib\gdata\java\libです。

 0 Fri Feb 04 15:25:54 PST 2011 com/google/gdata/data/docs/ 
    904 Fri Feb 04 15:25:54 PST 2011 com/google/gdata/client/docs/DocsService$Versions.class 
    6686 Fri Feb 04 15:25:54 PST 2011 com/google/gdata/client/docs/DocsService.class 

答えて

3

$CLASSPATH glob表現をサポートしていません:私はjar tvf D:\javalib\gdata\java\lib\gdata-client-1.0.jarを入力した場合たとえば、私は(一部で)これが得ます。代わりに、それぞれrequire個々に.jar:

Dir["D:\\javalib\\gdata\\java\\lib\\*.jar"].each { |jar| require jar } 
+0

これは私の問題の1つを解決するようです。他の問題を別の投稿に掲載します。 – rlandster