首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过纳什霍恩执行uglifyJs2

通过纳什霍恩执行uglifyJs2
EN

Stack Overflow用户
提问于 2016-03-09 13:27:43
回答 2查看 389关注 0票数 2

我通过uglifyjs --self提取了uglifyjs --self,并试图使用uglify.js缩小app.js。我希望,小型化的js至少应该被生成到新的文件或控制台中,但是现在它不能工作了。我应该做些什么来减少使用app.js的uglify.min.js?

代码语言:javascript
复制
public static void main(String[] args) throws Exception {
    ScriptEngine scriptEngine = new ScriptEngineManager().getEngineByName("nashorn");
    Bindings bindings = new SimpleBindings();
    bindings.put("console", System.console());
    executeJs("uglifyjs.min.js",scriptEngine, bindings);
    String res = (String) invocable.invokeFunction("UglifyJS.parse(code)", code);
   //Here I got NoSuchMethodException: No such function UglifyJS.parse(code)
}

static String readFile(String path, Charset encoding)
        throws IOException
{
    byte[] encoded = Files.readAllBytes(Paths.get(path));
    return new String(encoded, encoding);
}

private static void executeJs(String fileName, ScriptEngine engine, Bindings bindings) throws Exception {
    String test = readFile(fileName, StandardCharsets.UTF_8);
    engine.put(ScriptEngine.FILENAME, fileName);
    engine.eval(test, bindings);
}

当我莫名

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-11 05:23:12

invokeFunction只能用于调用全局函数。它不能像上面那样用于计算任意代码。下列措施将起作用:

代码语言:javascript
复制
// define a global function that accepts one arg and invoke UglifyJS.parse on it
scriptEngine.eval("function func(code) { return UglifyJS.parse(code) }");

// call the newly defined global function "func"
invocable.invokeFunction("func", code);
票数 2
EN

Stack Overflow用户

发布于 2016-11-15 09:14:28

作为另一种选择。

代码语言:javascript
复制
    ScriptObjectMirror uglify = (ScriptObjectMirror)this.scriptEngine.eval("UglifyJS");
    String ugly = (String)uglify.callMember("parse", "mycode");

在uglify.callMember(.)的10万个调用中,它确实慢了一点。在我的系统里,它慢了大约150毫秒。通过首先调用uglify.getMember(“解析”)并直接对该对象使用调用,它似乎没有做任何改进。

然而,它确实避免了命名冲突。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35892937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档