[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [Dltk-dev] Calling Java from Ruby
|
There is an Environment tab in the Eclipse launch configuration dialog.
Regards,
Alex
----- Original Message -----
From: "Andrew Mickish" <mickish@xxxxxxx>
To: "DLTK Developer Discussions" <dltk-dev@xxxxxxxxxxx>
Sent: Monday, September 15, 2008 8:48:55 PM GMT +06:00 Almaty, Novosibirsk
Subject: Re: [Dltk-dev] Calling Java from Ruby
Thanks, Alex. It works with an augmented CLASSPATH in jruby.bat.
Is that where you modified CLASSPATH too? I was hoping for a more
elegant interface in an Eclipse dialog box...
--Andy
Alex Panchenko wrote:
> Hi Andrew,
>
> You should specify the CLASSPATH environment variable to the location
> the java files could be loaded from.
> Most probably it should be C:\Workspace\ZooGlue\bin in your example.
>
> I have looked at http://jruby.codehaus.org/Java+Integration and made
> some changes in your script, so not it works for me. Probably there
> are other ways to do the same thing.
>
> include Java
> include_class 'zoo.utils.Truthiness'
>
> def show(it)
> puts it.to_s + ":\t" + Truthiness::isTrue(it).to_s + "\t" +
> Truthiness::isFalse(it).to_s
> puts "\t" + (it ? "true":"false") + "\t" + ((!it)?"true":"false")
> end
>
> 0 ? "TRUE" : "FALSE"
>
> show( true )
> show( false )
> show( 0 )
> show( 1 )
> show( nil )
> show( "bye" )
> show( "" )
> show( 'x' )
>
> Regards,
> Alex
>
>
> Andrew Mickish wrote:
>> How can I call static Java methods located in a different project
>> than my Ruby script?
>>
>> I have a Java project named ZooGlue containing the class
>> zoo.util.Truthiness, and a Ruby project named Zuby containing the
>> script TestTruthiness.rb starting with these lines:
>>
>> include Java
>> include_class Java::zoo.utils.Truthiness
>>
>> When I run TestTruthiness.rb, I get
>>
>> C:/downloads/Ruby/jruby-1.1.4/lib/ruby/site_ruby/1.8/builtin/javasupport.rb:49:
>>
>> in `method_missing': cannot load Java class zoo.utils.Truthiness
>> (NameError)
>> from C:\Workspace\Zuby\TestTruthiness.rb:9
>>
>> I probably ought to put ZooGlue on Zuby's build path somehow, but the
>> Build Path dialog box for the Ruby project does not list any of my
>> Java projects as eligible to add to the build path. Should I
>> explicitly refer to
>> C:\Workspace\ZooGlue\bin\zoo\utils\Truthiness.class in the Ruby
>> script somehow?
>>
>> I am using Eclipse 3.4, DLTK 9.5, and my Ruby Interpreter executable
>> is C:\downloads\Ruby\jruby-1.1.4\bin\jruby.bat
>>
>> ######################################################################
>> # Project: Zuby
>> # File: TestTruthiness.rb
>>
>> include Java
>> include_class Java::zoo.utils.Truthiness
>>
>> def show(it)
>> println "" + it + ":\t" + isTrue(it) + "\t" + isFalse(it);
>> println "\t" + (it ? "true":"false") + "\t" + ((!it)?"true":"false")
>> end
>>
>> 0 ? "TRUE" : "FALSE"
>>
>> show( true )
>> show( false )
>> show( 0 )
>> show( 1 )
>> show( null )
>> show( "bye" )
>> show( "" )
>> show( 'x' )
>>
>> ######################################################################
>>
>> //////////////////////////////////////////////////////////////////////
>> // Project: ZooGlue
>> // File: Truthiness.java
>>
>> package zoo.utils;
>>
>> /**
>> * Everything is true except false and null.
>> */
>> public class Truthiness {
>> static public boolean isFalse (Object o)
>> {
>> return o == null || Boolean.FALSE.equals(o);
>> }
>>
>> static public boolean isTrue (Object o)
>> {
>> return isFalse(o) == false;
>> }
>> }
>>
>> //////////////////////////////////////////////////////////////////////
>>
>>
>> _______________________________________________
>> dltk-dev mailing list
>> dltk-dev@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/dltk-dev
> _______________________________________________
> dltk-dev mailing list
> dltk-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/dltk-dev
_______________________________________________
dltk-dev mailing list
dltk-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dltk-dev