Ich habe für eine Weile mit Ruby programmiert und ich genieße es wirklich. In letzter Zeit habe ich begonnen, Ruby Code zu kompilieren. Aus mehreren Gründen ist die Verwendung von Ruby2exe keine Option für mich. Also habe ich beschlossen, Jruby einen Versuch zu geben (das Erzeugen eines Glases wäre gut genug).Kompilieren Sie jruby "Hallo Welt" Problem
Ich benutze Windows und ich installierte Java JDK 6u17 (unter C: \ Programme \ Java \ jdk1.6.0_17).
Ich installierte jruby 1,4 bei C: \ jruby
ich eine Hallo Welt in Java erstellt, kompiliert und ausgeführt es ganz gut (so Java funktioniert gut).
Ich habe eine Datei "script.rb" mit:
puts "Hello, world"
ich dieses Programm mit jruby laufen:
jruby script.rb
Und es funktioniert gut.
ich gesetzt habe JAVA_HOME auf C: \ Programme \ Java \ jdk1.6.0_17
ich erfolgreich auch laufen:
java -jar c:\jruby\lib\jruby.jar script.rb
ich dann mit dem Befehl kompilieren:
jruby -S jrubyc script.rb
Erzeugt die Klasse 'script.class'
Mein Problem ist, dass ich keine Möglichkeit, um richtig auszuführen script.class
fand ich versuchen:
java -cp .:c:\jruby\lib\jruby.jar script
Und ich bekomme die Fehlermeldung:
Exception in thread "main" java.lang.NoClassDefFoundError: script
Caused by: java.lang.ClassNotFoundException: script
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: script. Program will exit.
ich auch versucht, Kopieren von jruby-complete-1.4.0.jar in das lokale Verzeichnis sowie einige andere Optionen.
Wer weiß, was mache ich falsch?
Vielen Dank für diese Frage. Ich habe danach gesucht: 'jruby -S Jrubyc script.rb', aber alles, was ich finden konnte, war die ruby2java-Seite (http://kenai.com/projects/ruby2java/pages/Home), was bedeutet, dass ich eine Klasse in Ruby verwenden muss, und selbst dann habe ich diese zwei Fehler ** 1 ** http://kenai.com/jira/browse/JVMSCRIPT-7 ** 2 ** http://kenai.com/projects/ruby2java/lists/issues/archive/2009-09/message/0 – atomicules