как взаимодействовать с Java из двоичного преобразованного JavaScript?

#javascript #html

#javascript #HTML

Вопрос:

Для решения независимого от устройства / платформы автономного приложения с HTML 5 SVG JavaScript, как упаковать JavaScript как двоичный файл для всех устройств, чтобы он не был доступен пользователям, а также как выполнять вызовы библиотеки Java из этого скрытого / упакованного двоичного JavaScript? Пробовал использовать текущие доступные решения, такие как nodewebkit, для создания javascript в двоичном формате, но выполнение вызовов Java с использованием Java applet не работает из двоичного упакованного JavaScript.

Ответ №1:

  1. Вы спрашиваете о мультиплатформенной разработке в JS?

В таком случае взгляните на PhoneGap, Tide SDK, Enyo JS, MoSync — их много, и новые продолжают появляться.

  1. Вы спрашиваете о запуске JS на Java?

В этом случае для этого есть Java Scripting APIhttp://docs.oracle.com/javase/7/docs/technotes/guides/scripting/programmer_guide /

Согласно образцу изhttp://docs.oracle.com/javase/8/docs/technotes/guides/scripting/prog_guide/api.html

 import javax.script.*;
import java.io.*;

public class ScriptVars {
    public static void main(String[] args) throws Exception {
        ScriptEngineManager manager = new ScriptEngineManager();
        ScriptEngine engine = manager.getEngineByName("nashorn");

        // create File object
        File f = new File("test.txt");

        // expose File object as a global variable to the engine
        engine.put("file", f);

        // evaluate JavaScript code and access the variable
        engine.eval("print(file.getAbsolutePath())");
    }
}
  

Вы можете представить объект Java как глобальную переменную.
Итак, я бы пошел оттуда.

Комментарии:

1. Спасибо за ответ. Требование заключается в том, что Javascript должен выполнять вызовы Java даже после упаковки Javascript в двоичный файл. Конечным приложением будет HTML5 SVG Javascript java — имея javascript в виде двоичного файла, пользователь не сможет видеть код js, который ptherwise виден с исходным кодом view.

2. JavaScript загружается через html5 либо в браузере, либо упаковывается и запускается nodewebkit. Вызовы Java должны выполняться из javascript