[Ironruby-core] Executing irake from C#

Jimmy Schementi Jimmy.Schementi at microsoft.com
Thu Jan 14 16:52:22 EST 2010


Hosting IronRuby in C# requires a little bit of configuration. Copy the entire contents of ir.exe.config into your C# project's app.config. Take a look at the LibraryPaths setting to make sure any relative paths still make sense, and then any Ruby libraries or gems that work at the command line will also work when hosted.

And Mohammad, the bring everything into perspective, "../../rake foo" isn't valid Ruby code =)

~Jimmy


> -----Original Message-----
> From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-
> bounces at rubyforge.org] On Behalf Of Mohammad Azam
> Sent: Thursday, January 14, 2010 1:47 PM
> To: ironruby-core at rubyforge.org
> Subject: Re: [Ironruby-core] Executing irake from C#
> 
> This works if I create a ruby file and execute it like this:
> 
> ir something.rb
> 
> but it does not work using the following code:
> 
>   static void Main(string[] args)
>         {
>             var script = @"require 'rubygems'
> require 'rake'
> 
> require 'rakefile';
> 
> Rake::Task['foo'].execute";
> 
>             var engine = IronRuby.Ruby.CreateEngine();
>             engine.Execute(script);
> 
>         }
> 
> Exception is:
> 
> 
> Unhandled Exception: IronRuby.Builtins.LoadError: no such file to load
> -- rubyge
> ms
>    at
> Microsoft.Scripting.Interpreter.ThrowInstruction.Run(InterpretedFrame
> fram
> e)
>    at
> Microsoft.Scripting.Interpreter.Interpreter.RunInstructions(InterpretedFra
> me frame)
>    at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame
> frame)
>    at Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0
> arg0, T1 a
> rg1)
>    at IronRuby.Runtime.RubyScriptCode.Run(Scope scope, Boolean
> bindGlobals)
>    at IronRuby.Runtime.RubyScriptCode.Run()
>    at Microsoft.Scripting.SourceUnit.Execute()
>    at Microsoft.Scripting.Hosting.ScriptSource.Execute()
>    at Microsoft.Scripting.Hosting.ScriptEngine.Execute(String
> expression)
>    at ConsoleApplication2.Program.Main(String[] args) in
> C:\Projects\EStudyVS200
> 8\EStudySoltution\EStudy\ConsoleApplication2\Program.cs:line 20 Press any key
> to continue . . .
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core



More information about the Ironruby-core mailing list