Tag: jsdom

在Java上从Rhino启动jsdom

我正在跟进这个答案 : 我设法在Java上运行Rhino Engine的简单JavaScript代码。 但是当谈到D3.js时 ,例如: var svg = d3.select(“body”).append(“svg”) 正如您所见, d3要求DOM首先可用。 所以,出于这个原因, JSDOM应该是解决方案。 但是JSDOM恰好依赖于requirejs 来自RequireJs网站: r.js文件允许您运行优化器以及在Node, Rhino或xpcshell中运行模块。 然后我的Java Rhino代码如下所示: FileReader fr1 = new FileReader(“lib/r.js”); FileReader fr2 = new FileReader(“lib/jsdom.js”); engine.eval(fr1); engine.eval(fr2); 但是现在我最终出现了这样的错误: ReferenceError:未定义“arguments”。 然后我找到了这个很好的答案 : 然后我的代码看起来像这样: cx.evaluateReader(sharedScope, new FileReader(“lib/r.js”), “require”, 1, null); cx.evaluateReader(sharedScope, new FileReader(“lib/loader.js”), “loader”, 1, null); cx.evaluateReader(sharedScope, new FileReader(“lib/jsdom.js”), “loader”, 1, null); […]