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
- ↑ JSR 223: Scripting for the Java Platform Specification Request [online]. Oracle Corporation [cit. 2013-09-04]. Dostupné online. (anglicky)
- ↑ 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
- BINI, Ola. Practical JRuby on Rails Web 2.0 Projects: Bringing Ruby on Rails to Java. First. vyd. [s.l.]: Apress, 24. září 2007. Dostupné online. ISBN 1-59059-881-4. S. 330. Je zde použita šablona
{{Cite book}}
označená jako k „pouze dočasnému použití“.
- EDELSON, Justin; LIU, Henry. JRuby Cookbook. First. vyd. [s.l.]: O'Reilly Media, 18. listopad 2008. Dostupné online. ISBN 0-596-51980-X. S. 222. Je zde použita šablona
{{Cite book}}
označená jako k „pouze dočasnému použití“.
- KUTLER, Chris; LEONARD, Brian. NetBeans Ruby and Rails IDE with JRuby. First. vyd. [s.l.]: Apress, 4. květen 2009. Dostupné v archivu pořízeném dne 2012-08-27. ISBN 1-4302-1636-0. S. 160. Je zde použita šablona
{{Cite book}}
označená jako k „pouze dočasnému použití“.
- O NUTTER, Charles; ENEBO, Thomas; SIEGER, Nick; BINI, Ola; DEES, Ian. Using JRuby: Bringing Ruby to Java. First. vyd. [s.l.]: Pragmatic Bookshelf, 4. únor 2011. Dostupné online. ISBN 978-1934356654. S. 300. Je zde použita šablona
{{Cite book}}
označená jako k „pouze dočasnému použití“.
- KUTNER, Joe. Deploying with JRuby: Deliver Scalable Web Apps using the JVM. First. vyd. [s.l.]: Pragmatic Bookshelf, 22. srpen 2012. Dostupné v archivu pořízeném dne 2013-09-15. ISBN 978-1934356975. S. 200. Je zde použita šablona
{{Cite book}}
označená jako k „pouze dočasnému použití“.
Související články
Externí odkazy