JRuby
VývojářCharles Oliver Nutter, Thomas Enebo, Ola Bini a Nick Sieger
Aktuální verze9.4.7.0 (29. dubna 2024)
Operační systémmultiplatformní
PlatformaJava Virtual Machine
Vyvíjeno vRuby a Java
Typ softwaruinterpreter programovacího jazyka Ruby
LicenceCPL/GPL/LGPL
Webwww.jruby.org/
Některá data mohou pocházet z datové položky.

JRuby je implementace programovacího jazyka Ruby na JVM, napsaná převážně v Javě. JRuby je úzce integrován s Javou a dovoluje obousměrný přístup mezi kódem v Javě a v Ruby. (Podobně jako Jython.)

Ukázka kódu

Volání Javy z JRuby

Jedna ze silných stránek JRuby je jeho schopnost volat třídy z platformy Java. K tomu je nejdříve potřeba získat podporu Javy příkazem require 'java'. Následující příklad předvede vytvoření JFrame s JLabel.

require 'java'

frame = javax.swing.JFrame.new
frame.getContentPane.add javax.swing.JLabel.new('Hello, World!')
frame.setDefaultCloseOperation javax.swing.JFrame::EXIT_ON_CLOSE
frame.pack
frame.set_visible true

Volání JRuby z Javy

JRuby může být stejně snadno volán z Javy, buď pomocí JSR 223[1] Scripting pro Javu 6, nebo frameworku Apache Bean Scripting.

//Example using JSR 233 Scripting for Java 6
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine rbEngine = mgr.getEngineByExtension("rb");
try {
    rbEngine.eval("puts 'Hello World!'");
} catch (ScriptException ex) {
    ex.printStackTrace();
}

Chyby v JRuby

JRuby umožňuje načíst a spustit vzdálený kód ve funkci, která k tomu není určena.[2]

Odkazy

Reference

  1. JSR 223: Scripting for the Java Platform Specification Request [online]. Oracle Corporation [cit. 2013-09-04]. Dostupné online. (anglicky) 
  2. KRČMÁŘ, Petr. Chyby v programovacích jazycích ohrožují bezpečnost aplikací. root.cz [online]. 12. 12. 2017. Dostupné online. ISSN 1212-8309. 

Literatura

Související články

Externí odkazy

Pahýl Tento článek je příliš stručný nebo postrádá důležité informace.Pomozte Wikipedii tím, že jej vhodně rozšíříte. Nevkládejte však bez oprávnění cizí texty.