Недавно Oracle выпустила Java 8, которая включает Oracle Nashorn в качестве механизма JavaScript. Работает ли Nashorn только одним способом: вы можете преобразовать код JavaScript в байт-код Java? Или есть ли способ использовать его для преобразования кода Java в код JavaScript?Можно ли использовать Nashorn для преобразования Java-кода в Javascript?
ответ
Официальная страница Project Nashorn говорит: цель
Насхорн является реализация легкого высокопроизводительного JavaScript выполнения в Java с родной JVM. Этот проект намеревается включить Java-разработчиков встраивание JavaScript в Java-приложениях через JSR-223 и разработать бесплатные приложения JavaScript с использованием инструмента командной строки jrunscript.
Так что это не цель проекта Nashorn для преобразования Java-кода в Javascript.
Вы можете использовать вместо этого GWT compiler, который это делает.
GWT SDK предоставляет набор основных API-интерфейсов Java и виджетов. Они позволяют вам написать приложения AJAX в Java, а затем скомпилировать исходный код высоко оптимизированный JavaScript, который работает во всех браузерах, в том числе мобильных браузеров для Android и iPhone.
Остерегайтесь того, что можно эмулировать только часть Java Runtime Library, вы можете найти список под этим link.
gwt-exporter также является полезным инструментом для вашей цели.
Разработка приложения или библиотеки в GWT и использовать gwtexporter аннотаций, чтобы сделать классы и методы, доступные из JavaScript.
Насколько я знаю, инструментальная цепочка GWT обнаруживает, какой Java-код необходим на стороне клиента и конвертировать в js только эти фрагменты. – aalku
Я изменил свой ответ, чтобы учесть ваше замечание. –
sweeeeet отличный ответ ya'll! –
- 1. Nashorn/Rhino для преобразования строки из Java в Javascript
- 2. Можно ли использовать преобразования Джексона для XSLT
- 3. Можно ли использовать Augeas для преобразования файлов?
- 4. Можно ли использовать javascript sha1?
- 5. Можно ли использовать Джексон для преобразования статического класса в JSON?
- 6. Можно ли использовать JavaScript JavaScript?
- 7. Можно ли использовать сценарии загрузки Nashorn из classpath?
- 8. Можно преодолеть медлительность Nashorn?
- 9. Nashorn Javascript: NativeTypeError
- 10. Можно ли использовать координаты преобразования и изображения?
- 11. Можно ли использовать логарифмы для преобразования чисел в двоичные?
- 12. Nashorn - debug javascript run in Nashorn
- 13. Вызывает ли Nashorn встроенные объекты JavaScript?
- 14. Профиль Nashorn Выполнение Javascript?
- 15. Содержит ли Nashorn Javascript заявления «eval»?
- 16. Можно ли использовать Nodejs в javascript проекте
- 17. Когда можно использовать == в JavaScript?
- 18. Nashorn vs Javascript vs ECMAScript
- 19. Кодирование/Декодирование Javascript в Nashorn
- 20. можно ли использовать CSS-файл в javascript?
- 21. Как использовать java.math.BigInteger в jjs/Nashorn?
- 22. Можно ли использовать подстановочный знак для вызова переменных в Javascript?
- 23. можно ли использовать переменную для объявления div в JAVASCRIPT?
- 24. Можно ли использовать клавиатуру для запуска браузера файлов в JavaScript?
- 25. Можно ли использовать javascript для записи в файл?
- 26. Можно ли использовать метод String.replace() в Javascript для добавления строк?
- 27. Можно ли использовать фигурные скобки для имитации регионов в Javascript?
- 28. Можно ли использовать шаблон модуля javascript?
- 29. можно ли использовать функцию javascript id?
- 30. Можно ли использовать JavaScript внутри шаблона handlebars.js
Единственное, что я знаю, чтобы преобразовать/компиляции Java в JavaScript является Google Web Toolkit (GWT) – alkis
Я не думаю, что Nashorn генерирует любой байткод - это метод обрабатывает весь путь вниз. –
Можете ли вы проверить, соответствует ли мой ответ? –