Executing an Ironruby file from a console app


#1

Hi all,

I have the following ruby code which runs in a console application:

require File.dirname(FILE) + ‘/lib/horn’
require File.dirname(FILE) + ‘/lib/dsl’

The file is named hornbuild.rb.

The main ruby file has a require directive for this hornbuild.rb like
so:

require ‘hornbuild’

I then execute the ruby file like this:

var engine = Ruby.CreateEngine();
engine.ExecuteFile(buildFilePath);

The problem is that I can only get this scenario to work by copying the
hornbuild.rb file and lib folder into the bin directory of the console
application.

Can I not put these files in the gems folder or something so they are
globally accessible.

If so, how can I achieve this?

Cheers

Paul


#2

You can set load paths.

var engine = Ruby.CreateEngine();
var context = Ruby.GetExecutionContext(engine);
context.Loader.SetPaths(“C:\ironruby\lib”);


#3

ScriptEngine.SetSearchPaths should also work.

Tomas

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Ivan Porto
Carrero
Sent: Saturday, March 21, 2009 3:41 PM
To: removed_email_address@domain.invalid
Subject: Re: [Ironruby-core] Executing an Ironruby file from a console
app.

You can set load paths.

var engine = Ruby.CreateEngine();
var context = Ruby.GetExecutionContext(engine);
context.Loader.SetPaths(“C:\ironruby\lib”);

On Sat, Mar 21, 2009 at 9:33 PM, Paul Cowan
<removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid> wrote:
Hi all,

I have the following ruby code which runs in a console application:

require File.dirname(FILE) + ‘/lib/horn’
require File.dirname(FILE) + ‘/lib/dsl’

The file is named hornbuild.rb.

The main ruby file has a require directive for this hornbuild.rb like
so:

require ‘hornbuild’

I then execute the ruby file like this:

var engine = Ruby.CreateEngine();
engine.ExecuteFile(buildFilePath);

The problem is that I can only get this scenario to work by copying the
hornbuild.rb file and lib folder into the bin directory of the console
application.

Can I not put these files in the gems folder or something so they are
globally accessible.

If so, how can I achieve this?

Cheers

Paul

Posted via http://www.ruby-forum.com/.


Ironruby-core mailing list
removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
http://rubyforge.org/mailman/listinfo/ironruby-core