Hi Tim,

the problem is that the -J-cp option sets the classpath for the java process
rather than the jruby one. Last week I wrote a post about class loaders in
jruby that might help you:

http://thinkincode.net/2011/02/09/jruby-class-loader-by-example.html

Cheers


On Tue, Feb 15, 2011 at 7:51 AM, Tim Chen <[email protected]> wrote:

> Hi all,
>
> I'm currently trying to use JRuby to launch our Java application, and I'm
> currently just calling the command line jruby with all the dependencies
> passed in as classpath and launching it in a Ruby script.
>
> ex: jruby -J-cp xxxxx/.jar:xxxxxx.jar run.rb
>
> The problem is that part of our app downloads yaml files and deserializes
> it to objects based on the type specified in each field, and it calls
> Class.forName('org.my.class') to
> try to get the class and call its constructor.
>
> However, calling the java app from JRuby gives NoClassFound when calling
> Class.forName, even though the class is in one of the jar files passed in
> the classpath.
>
> I wonder what's the way to get the class loader to able to find that class?
>
> Thanks,
>
> Tim
>

Reply via email to