Necesito compilar mi aplicación JRuby en un archivo JAR independiente. ¿Cómo puedo hacer esto?Crear un archivo JRuby JAR desplegable
Respuesta
Para basta con ejecutar una secuencia de comandos:
El sitio de JRuby tiene un archivo JAR ejecutable que se puede obtener en el JRuby download page. Desea que el JRuby complete el archivo JAR. A continuación, puede ejecutar la aplicación haciendo
java -jar jruby-complete-1.4.0.jar <script>
creo que también se puede construir el mismo archivo JAR de la fuente. En la fuente descargada hacer
ant --projecthelp
Para incrustar una secuencia de comandos de Ruby por completo en un archivo JAR: Embedding JRuby in Java es un buen punto de partida. Probablemente quiera descomprimir el archivo jruby-complete.jar
, agregar su clase principal Java que tenga una llamada a un script JRuby o tenga el código Ruby incrustado en él, reemplace la clase principal del manifiesto para apuntar a su nuevo punto de entrada, y jarlo apoyo.
Echa un vistazo rawr. Es una gema que empaqueta su aplicación en un archivo JAR.
Si desea compilar para la protección del código fuente debe producir un archivo .class
para cada secuencia de comandos en su proyecto (como se describe here) y luego sustituir el contenido del guión original con
require 'the_corresponding_class_file'
para cada uno de los scripts compilados.
JRuby 1.6 ha mejorado esto. Ahora hay una sección de la wiki - StandaloneJarsAndClasses - que habla sobre cómo usar jrubyc para generar archivos .class y frascos independientes.
Con el nuevo compilador, puede generar archivos .class como en este ejemplo de la wiki:
[email protected]:/tmp/fnx$ cat my_foo.rb class Foo def bar(a, b) puts a + b end end [email protected]:/tmp/fnx$ ~/jruby/bin/jrubyc --javac my_foo.rb Generating Java class Foo to C:/cygwin/tmp/fnx/Foo.java javac -d C:/cygwin/tmp/fnx -cp C:/cygwin/home/james/jruby/lib/jruby.jar;. C:/cygwin/tmp/fnx/Foo.java [email protected]:/tmp/fnx$ ls Foo.class Foo.java my_foo.rb [email protected]:/tmp/fnx$ javap.exe Foo Compiled from "Foo.java" public class Foo extends org.jruby.RubyObject{ public static org.jruby.runtime.builtin.IRubyObject __allocate__(org.jruby.Ruby, org.jruby.RubyClass); public Foo(); public java.lang.Object bar(java.lang.Object, java.lang.Object); static {}; }
Y se puede establecer el punto de entrada para un tarro de org.jruby.JarBootstrapMain y añadir un frasco-bootstrap archivo .rb.
Warbler 1.3.0 o posterior también se puede utilizar para crear un archivo JAR ejecutable.
Instrucciones rápidas. Asegúrese de que está utilizando JRuby`s joya, etc. aquí:
$ gem install warbler
$ mkdir bin
$ cat <<EOF > bin/myapp
#!/usr/bin/env jruby
puts "Hello World"
EOF
$ chmod a+x bin/myapp
$ warble jar
Ahora debería tener un archivo myapp.jar
en el directorio actual. De acuerdo con el README
, solo agrega las bibliotecas que necesites en el directorio lib
y utiliza uno (o ambos) un .gemspec
o Gemfile
para controlar cualquier otra gema que deba colocarse en el archivo .jar
.
- 1. Cómo leer un archivo dentro de un Jar con JRuby
- 2. ¿Cómo crear un archivo jar ofuscado?
- 3. Crear un archivo jar en Android
- 4. ¿Cómo crear un archivo jar encriptado?
- 5. código Java para crear un archivo JAR
- 6. Cómo crear un archivo Jar en Netbeans
- 7. Crear un archivo jar desde un archivo de Scala
- 8. ¿Cómo crear un archivo jar ejecutable desde un proyecto clojure?
- 9. Crear archivo JAR sin incluir dependencias externas
- 10. Cómo crear un archivo ejecutable .jar con netbeans
- 11. Cómo crear un archivo .jar usando la terminal
- 12. ¿Cómo puedo crear un archivo .jar autoconsistente con Eclipse?
- 13. Crear un archivo jar de carpeta de origen con build.xml
- 14. ¿Cómo incluir el archivo jar al crear un paquete R?
- 15. Java - Crear una clase desde un archivo Jar
- 16. ¿Cómo usar JarOutputStream para crear un archivo JAR?
- 17. Crear un SDK (archivo jar individual) con archivos "so"
- 18. empaquetado de jruby script en jar con todas las dependencias?
- 19. ¿Cómo puedo usar gems-in-a-jar con JRuby incrustado?
- 20. Cómo crear un archivo .jar o export jar en IntelliJ (como eclipse java archive export)
- 21. Modificar un archivo dentro de un jar
- 22. Cómo crear un jar ejecutable con jar de dependencia
- 23. Cómo ejecutar un archivo JAR
- 24. Modificación de un archivo jar
- 25. Cómo crear un archivo de instalación que instalará un archivo ejecutable Jar
- 26. Uso de Maven para crear un archivo zip que contiene un archivo jar ejecutable con dependencias
- 27. Puede agregar varios archivos jar en un archivo jar y luego iniciar ese archivo jar
- 28. ¿Cómo puedo convertir un archivo JAR en un archivo EXE?
- 29. Ocultar clases en un archivo jar
- 30. Crear un JAR ejecutable Groovy con Gradle
Esta pregunta puede ser de ayuda: http://stackoverflow.com/questions/1921475/compile-jruby-hello-world-problem – atomicules
Esa pregunta tiene que ver con compilar y ejecutar el guión (J) Ruby solo y no con Jar embalaje (implementación). –