首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在javax.script中加载javascript库?

在javax.script中加载javascript库?
EN

Stack Overflow用户
提问于 2010-04-18 23:11:00
回答 1查看 1.6K关注 0票数 0

我想从Java运行 javascript,并获得评估的SVG代码。我使用javax.script.*运行Javascript:

代码语言:javascript
复制
public static void EvalScript() throws Exception {
    ScriptEngineManager factory = new ScriptEngineManager();
    ScriptEngine engine = factory.getEngineByName("JavaScript");
    Object result = engine.eval("var vis = new pv.Panel().width(300).height(300)
        .add (pv.Line).data ([1,0.5, 0.1, 0.01, 0.001, 0.3, 0.2,0.1,1])
           .left (function () { return this.index * 30; })
           .bottom (function (d) { return d * 250; });
        vis.root.render();
        vis.scene[0].canvas.innerHTML;");         
    System.out.println(result);
}

这会让我抱怨,因为我从来没有像平常那样装过Protovis。

代码语言:javascript
复制
<script type="text/javascript" src="../protovis-r3.1.0.js"></script> 

在通过javax.script运行Javascript时,是否有一种很好的方法,不需要将完整的Javascript中的Javascript获取到eval()命令中,而是加载一个库?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-18 23:17:26

那么,为什么不加载整个脚本并将其交给eval()呢?如果您希望Javascript执行上下文解析和解释库,那么一定要做一些事情。当然,您可以向脚本上下文提供一种机制,让脚本本身执行与您提供的<script>标记示例相当的操作,但结果将是完全相同的。

我不明白你对犀牛的评论。JDK1.6中的Javascript解释器是Rhino。

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

https://stackoverflow.com/questions/2664378

复制
相关文章

相似问题

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