JRuby — интерпретатор языка программирования Ruby, написанный целиком на Java (оригинальный интерпретатор написан на Си). Из Ruby-кода в JRuby можно вызывать классы Java, таким образом можно получить доступ ко всем библиотекам, инфраструктурам и инструментам платформы Java. Также можно получить доступ к Ruby коду из Java. Имеется поддержка большинства встроенных классов, BSF[2].

JRuby
Логотип программы JRuby
Типинтерпретатор
РазработчикиCharles Nutter,
Thomas Enebo,
Ola Bini,
Nick Sieger
Написана наJava, Ruby
Первый выпуск2001
Аппаратная платформа Java Virtual Machine
Последняя версия
Репозиторийgithub.com/jruby/jruby
Состояниеактивное
ЛицензияCPL/GPL/LGPL
Сайтjruby.org

Стандартное использование JRuby — это его встраивание в Java-приложение для поддержки скриптинга и ускорения разработки, что является преимуществом языка Ruby перед статическими языками. Также может использоваться для запуска Rails-приложений на Java-платформах.

Ограничения

править
  • JRuby может использовать только те библиотеки Ruby, которые написаны на чистом Ruby, без Си-расширений.
  • JRuby медленнее при старте, но после запуска обгоняет Ruby 1.8 в большинстве тестов за счёт использования JIT.
  • JRuby использует потоки Java, и поэтому не может поддерживать весь API Ruby для работы с потоками.

См. также

править

Примечания

править

Литература

править
  • Дж. Эдельсон, Г. Лю. Ruby на платформе Java = JRuby Cookbook. — СПб.: ДМК, 2011. — 240 с. — 500 экз. — ISBN 978-5-94074-703-1.

Ссылки

править