Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从Nashorn的babel运行browser.js_Javascript_Java_Reactjs_Babeljs_Nashorn - Fatal编程技术网

Javascript 如何从Nashorn的babel运行browser.js

Javascript 如何从Nashorn的babel运行browser.js,javascript,java,reactjs,babeljs,nashorn,Javascript,Java,Reactjs,Babeljs,Nashorn,我试图在Nashorn中运行browser.js,在库中使用babel.transform来实现一些同构的Webapp 在我的项目中运行npm i babel core 以下是巴别塔变压器等级的来源: public BabelTransformer() throws ScriptException, IOException{ try { ScriptEngineManager mgr = new ScriptEngineManager(); Scrip

我试图在Nashorn中运行browser.js,在库中使用babel.transform来实现一些同构的Webapp

  • 在我的项目中运行npm i babel core
  • 以下是巴别塔变压器等级的来源:

    public BabelTransformer() throws ScriptException, IOException{  
    try
        {
            ScriptEngineManager mgr = new ScriptEngineManager();
            ScriptEngine nashorn = mgr.getEngineByName("nashorn");
            nashorn.eval("var process = {env:{}}"); // node-modules expect that
            nashorn.eval("var global = this;"); // react expects that
            nashorn.eval(getScript("com/facebook/babel/jvm-npm.js"));
            nashorn.eval(getScript("com/facebook/babel/node_modules/babel-core/browser.min.js")); //The line 43
            babel = (ScriptObjectMirror)nashorn.eval("babel");
            invocable = (Invocable) nashorn;
        }
        catch(ScriptException | IOException e)
        {
            throw new Error(e); //this is line 49
        }
    }
    
  • 但我有一个错误,我无法诊断/解决:

    Testcase: testTransformOnHtmlElement(com.facebook.babel.BabelTransformerTest):  Caused an ERROR
    javax.script.ScriptException: <eval>:1:1 Expected ; but found error
    
     ^ in <eval> at line number 1 at column number 1
    java.lang.Error: javax.script.ScriptException: <eval>:1:1 Expected ; but found error
    
     ^ in <eval> at line number 1 at column number 1
        at com.facebook.babel.BabelTransformer.<init>(BabelTransformer.java:49)
        at com.facebook.babel.BabelTransformerTest.setUp(BabelTransformerTest.java:16)
    Caused by: javax.script.ScriptException: <eval>:1:1 Expected ; but found error
    
     ^ in <eval> at line number 1 at column number 1
        at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:467)
        at jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine.java:534)
        at jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine.java:521)
        at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:399)
        at jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155)
        at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)
        at com.facebook.babel.BabelTransformer.<init>(BabelTransformer.java:43)
    Caused by: jdk.nashorn.internal.runtime.ParserException: <eval>:1:1 Expected ; but found error
    
     ^
        at jdk.nashorn.internal.parser.AbstractParser.error(AbstractParser.java:292)
        at jdk.nashorn.internal.parser.AbstractParser.error(AbstractParser.java:277)
        at jdk.nashorn.internal.parser.AbstractParser.expectDontAdvance(AbstractParser.java:348)
        at jdk.nashorn.internal.parser.AbstractParser.expect(AbstractParser.java:335)
        at jdk.nashorn.internal.parser.Parser.endOfLine(Parser.java:3369)
        at jdk.nashorn.internal.parser.Parser.expressionStatement(Parser.java:1162)
        at jdk.nashorn.internal.parser.Parser.statement(Parser.java:969)
        at jdk.nashorn.internal.parser.Parser.sourceElements(Parser.java:775)
        at jdk.nashorn.internal.parser.Parser.program(Parser.java:711)
        at jdk.nashorn.internal.parser.Parser.parse(Parser.java:284)
        at jdk.nashorn.internal.parser.Parser.parse(Parser.java:250)
        at jdk.nashorn.internal.runtime.Context.compile(Context.java:1281)
        at jdk.nashorn.internal.runtime.Context.compileScript(Context.java:1248)
        at jdk.nashorn.internal.runtime.Context.compileScript(Context.java:629)
        at jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine.java:532)
    
    Testcase:testTransformonHtmlement(com.facebook.babel.babeltTransformerTest):导致错误
    javax.script.ScriptException::应为1:1;但是发现了错误
    ^在第1行第1列中
    java.lang.Error:javax.script.ScriptException::应为1:1;但是发现了错误
    ^在第1行第1列中
    在com.facebook.babel.babelttransformer上。(babelttransformer.java:49)
    在com.facebook.babel.babelttransformertest.setUp(babelttransformertest.java:16)
    原因:javax.script.ScriptException::1:1应为;但是发现了错误
    ^在第1行第1列中
    位于jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:467)
    位于jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine.java:534)
    位于jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine.java:521)
    位于jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:399)
    位于jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155)
    位于javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)
    在com.facebook.babel.babelttransformer上。(babelttransformer.java:43)
    原因:jdk.nashorn.internal.runtime.ParserException::1:1应为;但是发现了错误
    ^
    位于jdk.nashorn.internal.parser.AbstractParser.error(AbstractParser.java:292)
    位于jdk.nashorn.internal.parser.AbstractParser.error(AbstractParser.java:277)
    位于jdk.nashorn.internal.parser.AbstractParser.expectDontAdvance(AbstractParser.java:348)
    位于jdk.nashorn.internal.parser.AbstractParser.expect(AbstractParser.java:335)
    位于jdk.nashorn.internal.parser.parser.endOfLine(parser.java:3369)
    位于jdk.nashorn.internal.parser.parser.expressionStatement(parser.java:1162)
    位于jdk.nashorn.internal.parser.parser.statement(parser.java:969)
    位于jdk.nashorn.internal.parser.parser.sourceElements(parser.java:775)
    位于jdk.nashorn.internal.parser.parser.program(parser.java:711)
    位于jdk.nashorn.internal.parser.parser.parse(parser.java:284)
    位于jdk.nashorn.internal.parser.parser.parse(parser.java:250)
    位于jdk.nashorn.internal.runtime.Context.compile(Context.java:1281)
    位于jdk.nashorn.internal.runtime.Context.compileScript(Context.java:1248)
    位于jdk.nashorn.internal.runtime.Context.compileScript(Context.java:629)
    位于jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine.java:532)
    

    在Nashorn中运行browser.js应该怎么做?

    以BOM开头的文件会有问题吗?你能试试巴别塔的
    browser.js
    吗-core@Ok谢谢我要试试看;抱歉,这就是我所能想到的:(无论如何,谢谢:当我稍微修改代码时,我发现了一个奇怪的行为: