JRuby

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
JRuby
Логотип программы JRuby
Тип интерпретатор
Разработчик Charles Nutter,
Thomas Enebo,
Ola Bini,
Nick Sieger
Разработчики Charles Nutter,
Thomas Enebo,
Ola Bini,
Nick Sieger
Написана на Java, Ruby
Первый выпуск 2001
Последняя версия 9.3.6.0 (27 июня 2022 года[1])
Состояние активное
Лицензия CPL/GPL/LGPL
Сайт jruby.org

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

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

Ограничения

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

См. также

Примечания

  1. JRuby 9.3.6.0 Released. Дата обращения: 30 июля 2022. Архивировано 30 июля 2022 года.
  2. Bean Scripting Framework. Архивная копия от 18 января 2012 на Wayback Machine (англ.)

Литература

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

Ссылки