BeanShell

BeanShell
ПарадигмаОбъектно-ориентированный , скриптовый
РазработаноЯКП
Впервые появился1999 ; 25 лет назад ( 1999 )
Стабильный релиз
2.1.1 [1] / 2 декабря 2022 г. ; 23 месяца назад ( 2 декабря 2022 )
Дисциплина набора текстаДинамичный , сильный
Язык реализацииЯва
ПлатформаJVM
ОСКроссплатформенный
Лицензия2012: Apache-2.0 [a] [2] [3]
2001: только SPL-1.0 или LGPL-2.1 [b] [4]
1999: только LGPL-2.1 [c] [5]
Веб-сайтgithub.com/beanshell/beanshell
Под влиянием
Java , JavaScript , Perl

BeanShell — небольшой, бесплатный, встраиваемый интерпретатор исходного кода Java с функциями языка объектных скриптов, написанный на Java . Он работает в среде выполнения Java (JRE), динамически выполняет стандартный синтаксис Java и расширяет его обычными удобствами скриптов, такими как свободные типы, команды и замыкания методов, как в Perl и JavaScript.

Функции

Хотя BeanShell позволяет своим пользователям определять функции , которые могут быть вызваны из скрипта, его основополагающая философия заключается в том, чтобы не загрязнять свой синтаксис слишком большим количеством расширений и « синтаксического сахара », тем самым гарантируя, что код, написанный для компилятора Java, обычно может быть выполнен интерпретативно BeanShell без каких-либо изменений и, почти так же, наоборот. Это делает BeanShell популярным инструментом тестирования и отладки для платформы виртуальной машины Java (JVM).

BeanShell поддерживает скриптовые объекты как простые замыкания методов, подобные тем, что есть в Perl и JavaScript .

BeanShell — это проект с открытым исходным кодом , который был включен во многие приложения, такие как Apache OpenOffice , Apache Ant , WebLogic Server Application Server, Apache JMeter , jEdit , ImageJ , JUMP GIS , Apache Taverna и многие другие. BeanShell предоставляет простой в интеграции интерфейс прикладного программирования (API). Его также можно запускать в режиме командной строки или в собственной графической среде.

История

Первые версии BeanShell (0.96, 1.0) были выпущены Патриком Нимейером в 1999 году, за ними последовала серия версий. BeanShell 1.3.0 был выпущен в августе 2003 года. Версия 2.0b1 была выпущена в сентябре 2003 года, завершившись версией 2.0b4 в мае 2005 года, которая по состоянию на январь 2015 года является новейшим релизом, размещенным на официальной веб-странице. [6]

BeanShell включен в дистрибутив Linux Debian с 1999 года. [7]

BeanShell проходил стандартизацию в рамках Java Community Process (JCP) в соответствии с JSR 274. [8]

После одобрения JCP бюллетеня по обзору BeanShell JSR в июне 2005 года, вокруг BeanShell не наблюдалось никакой видимой активности. [9] Статус JSR 274 — «Дремлющий».

Начиная с Java 9, Java вместо этого включает JShell , другую оболочку цикла чтения-вычисления-печати (REPL), основанную на синтаксисе Java, что указывает на то, что BeanShell не будет продолжен. [10]

Форк BeanShell, BeanShell2 , был создан в мае 2007 года на ныне несуществующем веб-сайте Google Code . [11] Проект beanshell2 внес ряд исправлений и улучшений в BeanShell и выпустил несколько релизов. По состоянию на январь 2020 года последней версией BeanShell2 является v2.1.9, выпущенная в марте 2018 года. [12] Этот форк был объединен обратно в исходное дерево в 2018 году, [13] сохранив все независимые изменения из обоих, а официальный проект был размещен на GitHub . [14][обновлять]

В декабре 2012 года, после предложения принять BeanShell в качестве проекта Apache Incubator, [15] BeanShell был лицензирован Apache Software Foundation и перенесен в Apache Extras, [16] изменив лицензию на Apache License 2.0 . Проект не был принят, но вместо этого планировалось, что он станет частью Apache Commons в будущем.

Однако из-за изменений в личных обстоятельствах разработчиков сообщество BeanShell не завершило переход на Apache, [17] а осталось на Apache Extras. С тех пор проект выпустил BeanShell 2.0b5, [16] который используется Apache OpenOffice и Apache Taverna .

Автоматизированный установщик Windows BeanShell Double-Click [18] был создан в 2013 году. Он включает функции интеграции с рабочим столом.

Смотрите также

Примечания

  1. ^ Apache-2.0: Начиная с 2.0b5
  2. ^ Только SPL-1.0 или LGPL-2.1: От 1.1alpha5 до 2.0b4
  3. ^ LGPL-2.1-only: 1.0 до 1.1alpha3

Ссылки

  1. ^ "Release 2.1.1". 2 декабря 2022 г. Получено 7 декабря 2022 г.
  2. ^ Нимейер, Пат. "Лицензия на программное обеспечение BeanShell". beanshell.org . Получено 13 января 2016 г. .
  3. ^ "BeanShell". github.com . Получено 13 января 2016 г. .
  4. ^ "ИЗМЕНЕНИЯ.md". GitHub .
  5. ^ "License.txt в 1.0". GitHub .
  6. ^ "Загрузки BeanShell". beanshell.org . 2009-01-28 . Получено 28 января 2015 г.
  7. ^ "Исходный пакет: bsh (2.0b4-12)". Debian . Получено 28 января 2015 г. .
  8. ^ Программа Java Community Process (SM) — JSR: Запросы спецификации Java — подробный JSR# 274. Jcp.org. Получено 21 июля 2013 г.
  9. ^ «Программа Java Community Process (SM) — JSR: Запросы на спецификацию Java — результаты». jcp.org .
  10. ^ "JEP 222: jshell: Java Shell (цикл чтения-оценки-печати)". openjdk.java.net . Получено 2015-09-03 .
  11. ^ beanshell2 — форк BeanShell — Google Project Hosting. Code.google.com (2011-11-21). Получено 2013-07-21.
  12. ^ Джоделейт, Питер. "README.md". GitHub . Получено 23 января 2020 г.
  13. ^ "Форк для исследования возможного слияния · Проблема № 46 · beanshell/Beanshell". GitHub .
  14. ^ https://github.com/beanshell/beanshell GitHub - beanshell/beanshell: Beanshell, язык сценариев для виртуальной машины Java. Получено 06.03.2018.
  15. ^ Триподи, С.; Базли, С. (2012). «Предложение BeanShell». Incubator Wiki . Apache Software Foundation.
  16. ^ ab "beanshell/beanshell". 27 января 2021 г. – через GitHub.
  17. ^ Триподи, Симоне (2015-01-08). "Beanshell под Apache?". Список рассылки разработчиков Apache Taverna . Apache Software Foundation . Получено 28 января 2015 г.
  18. ^ BeanShell Double-Click | Бесплатная загрузка программного обеспечения для разработки на Sourceforge.net. Получено 21 июля 2013 г.
  • BeanShell в Apache Extras
Взято с "https://en.wikipedia.org/w/index.php?title=BeanShell&oldid=1202844821"