deploying an application

C

Chris Finch

Hi all,
I wonder if you could some give some advice to a newbie?
I am writing an application in ruby at work. I am wondering how do I
make this available to everyone?
Am I correct in thinking I have to install ruby on everyone's PC?

All the PCs at work already have Java installed on them, is it possible
to use JRuby to compile the program to bytecode? then I wouldn't have to
install anything new on all the PCs. Is this a viable option?

Thankyou,
Chris.
 
H

Harry Kakueki

Hi all,
I wonder if you could some give some advice to a newbie?
I am writing an application in ruby at work. I am wondering how do I
make this available to everyone?
Am I correct in thinking I have to install ruby on everyone's PC?

All the PCs at work already have Java installed on them, is it possible
to use JRuby to compile the program to bytecode? then I wouldn't have to
install anything new on all the PCs. Is this a viable option?

Thankyou,
Chris.

Try this.

http://www.erikveen.dds.nl/rubyscript2exe/index.html

Harry
 
C

Charles Oliver Nutter

Chris said:
Hi all,
I wonder if you could some give some advice to a newbie?
I am writing an application in ruby at work. I am wondering how do I
make this available to everyone?
Am I correct in thinking I have to install ruby on everyone's PC?

All the PCs at work already have Java installed on them, is it possible
to use JRuby to compile the program to bytecode? then I wouldn't have to
install anything new on all the PCs. Is this a viable option?

JRuby doesn't yet compile all code to bytecode, but it doesn't really
matter. You can just package up everything in a single JAR file and
distribute that...no mucking about with different compiled versions of
Ruby, no rubyscript2exe for each target platform. A single file
containing a complete Ruby implementation and your code that will run on
any machine with Java.

Let me know if you'd like to hear more...

- Charlie
 
C

Chris Finch

Let me know if you'd like to hear more...

A reply from Mr. JRuby himself - what a forum!

Yes please, if you'd be so kind - any tutorial, instructions, further
information?
 
C

Charles Oliver Nutter

Chris said:
A reply from Mr. JRuby himself - what a forum!

Yes please, if you'd be so kind - any tutorial, instructions, further
information?


There's no official tutorial or walkthrough (though there should be). Of
course you can always just distribute JRuby, but it sounds like you want
a single package (i.e. a single file?), so basically, there's two options:

1. Add your code at the root of one of the "complete" JRuby JAR files,
which include all of the Ruby stdlib as well as the full JRuby
implementation. Once it's in the file (which is mostly a standard ZIP
file) you can do someting like the following:

<cli>
java -jar my-jruby-complete.jar -e "load 'myscript.rb'"
</cli>

2. You can also modify the JAR by including your code and a "main" Java
class that knows how to run it. Basically, this would involve a simple
main method something like the following:

<java>
package org.something;

public class MyMain {
public static void main(String[] args) {
org.jruby.Main.main(new String[] {"myscript.rb"});
}
}
</java>

And then an entry in the manifest file in the JAR (under
META-INF/MANIFEST.MF) like so:

<manifest>
Main-Class: org.someting.MyMain
</manifest>

With this, you could just run the jar directly:

<cli>
java -jar my-special-jruby.jar
</cli>

The bottom line in both cases is that no rebuild of JRuby is necessary.
It's one-stop-shopping for redistributable Ruby applications!

- Charlie
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,260
Messages
2,571,308
Members
47,964
Latest member
ConnieBold

Latest Threads

Top