Где находится JSR-223-оболочка Rhino для использования в JDK8?
Моя цель - сделать движок JavaScript JSR-223 доступным в виртуальной машине AdaptOpenJDK 8.
Поэтому я подумал использовать уже знакомый Rhino.
Вики-документ OpenJDK здесь
https://wiki.openjdk.java.net/display/Nashorn/Using+Rhino+JSR-223+engine+with+JDK8
Он указывает место, где можно скачать Mozilla Rhino. Вот:
https://github.com/mozilla/rhino
И указывает там, чтобы загрузить обертку двигателя сценария jsr-223. Вот:
https://java.net/projects/Scripting
Но эта ссылка мертва.
Где я могу найти упаковку JSR-223 для Rhino?
Или, может быть, есть лучшая альтернатива, доступная как JSR-223 javascript-engine.
1 ответ
У меня была точно такая же проблема, и мне удалось найти потерянный проект https://java.net/projects/Scripting.
Вот зеркало GitHub: https://github.com/scijava/javax-scripting. В комментарии говорится, что это окончательное состояние репо, не уверен, что это правда.
В этом репо также есть несколько клонов. Я нашел один особенно полезным, так как он имеет реализацию JSR223, совместимую с JDK8 для Rhino: https://github.com/zeroboo/java-scripting-rhino-jdk8.
Хотя приведенные выше очень удобны, если вам нужно обеспечить обратную совместимость с Rhino, для нового проекта я бы предпочел использовать GrallVM или Nashorn (примечание: уже устарело). Привязки JSR223 доступны для обоих: graal.js, nashorn.
Спасибо за комментарии. Это хорошая новость, что AdoptOpenJDK 8 поставляется с "Oracle Nashorn"!:)
c:/> Java -version
openjdk version "1.8.0_192"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_192-b12)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.192-b12, mixed mode
Мое тестовое приложение показывает список доступных движков JSR-223: Доступные скриптовые движки:
-------------------------------------------
Language: ECMAScript
Engine: Oracle Nashorn
Names: nashorn,Nashorn,js,JS,JavaScript,javascript,ECMAScript,ecmascript
-------------------------------------------
Подтверждая это, я вижу:
Name: Oracle Nashorn (version: 1.8.0_192)