Описание тега nashorn
Nashorn - это движок JavaScript на основе JVM с открытым исходным кодом. Он заменил движок Rhino JavaScript, запущенный в Java 8.
1
ответ
Повторное использование Nashorn ScriptEngine в сервлете
Я хочу выполнить JavaScript внутри сервлета. Можно ли повторно использовать один и тот же механизм сценариев во всех вызовах сервлета? Экземпляры сервлета используются несколькими потоками. Требуется ли для этого создание нового скриптового движка д…
30 дек '14 в 18:13
1
ответ
Анонимная функция в Нашорне
Допустим, есть файл, как это (function () { function change() { print('test'); } function test() { return 'Testing'; } })(); Как передать аргумент этой функции с помощью nashorn? Я не хочу запускать его через терминал, я должен создать метод, которы…
09 мар '16 в 19:51
2
ответа
Операторы break и continue вызывают, наконец, выполнение блока в Nashorn
Я озадачен почему finally исполняется после break/continue (Версия: Java 8, обновление 5) testTryFinally(); function testTryFinally() { try { print("Try 1"); for(var i = 0; i < 2; i++) { break; } print("Try 2"); } finally { print("Finally execute…
13 июл '14 в 02:35
2
ответа
Доступ к переменной ScriptContext с помощью Nashorn JavaScript Engine (Java 8)
Я использовал следующий код с Rhino Движок JavaScript в Java: @Test public void testRhino() throws ScriptException { final ScriptEngineManager factory = new ScriptEngineManager(); final ScriptEngine engine = factory.getEngineByName("rhino"); final S…
20 фев '17 в 06:56
0
ответов
JavaScript динамически добавляет метод в Object
Из JavaScript я хочу подключить и выполнить команды к MongoDB.Это отлично работает: db.collection.find( new BasicDBObject("{name:'Vlad'}")) Как мне динамически добавлять методы в коллекцию, чтобы я мог вызвать collection.find(string)?Моя цель - сдел…
29 июл '15 в 08:00
1
ответ
Цикл событий в Java
На самом деле я пытаюсь написать цикл обработки событий для Nashorn (Java 8), чтобы обратные вызовы от асинхронных операций (потоки, которые я запускаю, например, для подключения к удаленным службам или выполнения длительных вычислений), были помеще…
16 фев '17 в 15:37
2
ответа
Сколько памяти использует Nashorn ScriptEngine?
В настоящее время мы добавляем возможность написания сценариев на стороне сервера к одному из наших продуктов. В рамках этого я оцениваю скриптовые движки JSR 223. Поскольку мы потенциально можем запускать большое количество сценариев на сервере, ме…
09 июн '14 в 08:47
1
ответ
Nashorn - Синхронное Java против асинхронного несоответствия Javascript
У меня есть Java-проект, использующий Nashorn для запуска некоторого JavaScript-кода, специально для того, чтобы воспользоваться некоторыми библиотеками JS. Проблема, с которой я сталкиваюсь, заключается в том, что мое Java-приложение является синхр…
22 ноя '16 в 21:05
1
ответ
Javascript, встроенный в Java - Как я могу перейти к декларации? (Ctrl+B) (Нашорн) (IntelliJ)
В чистом Java или чистом JavaScript я могу использовать Ctrl+B, чтобы перейти к объявлению. Но когда я вызываю Java из файла JavaScript, IntelliJ не может разрешить мои ссылки на Java. Эти 3 строки не выполняют никаких проблем, но я не могу нажать "…
22 июл '15 в 22:04
1
ответ
Перенаправление Nashorn stdout и stderror
Попытка перенаправить механизм сценариев Nashorn из класса Java. Вот как я сейчас это инициализирую. Я бы хотел перенаправить любой вывод из скриптов, которые запускает движок. String[] nashornArgs = new String[] {"-strict", "--no-java", "--no-synta…
04 янв '17 в 19:08
1
ответ
Использование нескольких ScriptEngines
У меня есть папка, которая может содержать произвольное количество скриптов, которые функционируют как заклинания. Код в этих файлах сценариев является минимальным для большинства из них. Простое заклинание может содержать: Вернуть имя Возврат урона…
05 ноя '15 в 23:51
1
ответ
Запуск Javascript в Java: отказ в FilePermission
Запустив Javascript в Java, я получаю доступ к FilePermission как при чтении, так и при записи. Это происходит, когда Javascript обращается к методу Java, который выполняет некоторые файловые операции. Моя программа Java Swing GUI сама не имеет проб…
24 июн '15 в 09:53
0
ответов
System.console() является нулевым
Сегодня первый день игры с Nashorn. Я пытаюсь прослушать ввод из console.readLine(). К сожалению, это возвращает ноль. Что я делаю неправильно? var Console = Packages.java.io.Console; var Level = Packages.java.util.logging.Level; var Logger = Packag…
05 фев '19 в 13:45
1
ответ
Невозможно выполнить es6 на Java 8 с NashornscriptEngine
Я пытаюсь выполнить функцию JavaScript (ES6) в Java 8 (1.8.0_102). Вот фрагмент кода JavaScript, урезанный вниз. const myfunc = (args) => { if (!(args.name || args.zip)) return const result = {...args} const { name, zip, date } = result ... } Вот…
23 окт '17 в 21:05
0
ответов
java.lang.NoClassDefFoundError: jdk.nashorn.internal.scripts.JO28P0
Я закончил библиотеку для Java, и я использовал ее для замены java.lang.invoke пакет (т. е. добавьте его в загрузчик классов загрузки перед обычной библиотекой JVM). В пакете он динамически генерирует байт-коды для дескрипторов метода. Спасибо, если…
09 мар '17 в 19:03
1
ответ
Есть ли у Nashorn метапрограммирование, подобное мета-классу Groovy?
Просто интересно, возможно ли в Nashorn расширить класс Java во время выполнения, подобный метаклассу Groovy? Я искал InvokeDynamic, но я не уверен, что это то, что я хочу, и Java.extend позволяет мне расширять класс, но я получаю ссылку на объект т…
04 июл '13 в 04:41
1
ответ
Запуск JSDOM в Нашорне
Я хочу сделать d3 диаграммы на сервере. У меня было 3 варианта: Node, Phantom и Nashorn. Я предпочитаю Nashorn, потому что мой API - это Scala Play, и я не хочу управлять другим процессом. (развертывание, загрузка, очередь и т. д. и т. д.) Так что т…
24 май '16 в 23:09
1
ответ
Nashorn MultiThread Программирование
Можете ли вы помочь мне, если следующий код будет работать в многопоточном приложении. Вот мой Java Script, который будет оценен Nashorn var Thread = Java.type("java.lang.Thread"); var referenceNumberValid = "0000"; var referenceNumberInvalid = "000…
15 мар '16 в 12:56
1
ответ
Функция JavaScript (include()) не работает на Nashorn
Я попытался запустить следующий код JavaScript на Nashorn Engine. var fruits = ["Banana", "Orange", "Apple", "Mango"]; fruits.toString(); fruits.include("Orange"); Но это дает следующую ошибку "Ошибка типа: fruit.include не является функцией в строк…
17 апр '17 в 06:38
1
ответ
Ошибка Nashorn JDK8u40 "Слишком большой код метода"
Eval Nashorn js-скрипта для метода, вызываемого для объекта, который фактически реализуется его суперклассом, делегирует динамический компоновщик. Это перебирает всю иерархию класса и создает classWriter на всех его методах. Если суперклассы содержа…
18 дек '14 в 09:04