2015-01-20 39 views
0

我正在寻找在JVM中执行JavaScript的解决方案,但没有调用另一个进程 - 我需要所有东西都是JVM进程中的独占。nodyn是否将node.js作为另一个进程调用?

看起来很有前途的一个选项是nodyn(嵌入式),但我无法弄清楚是否启动了另一个进程。 他们在readme file网上提供的示例似乎是一个“看起来相似”的过程调用。特别可疑的是与nodyn二进制兼容的-e参数。

NodynConfig config = new NodynConfig(new String[] { "-e", SCRIPT }); 
// Create a new Nodyn and run it 
Nodyn nodyn = factory.newRuntime(config); 
... 
int exitCode = nodyn.run(); 

我的问题:

  1. 是否nodyn/dynjs调用另一个进程或不?
  2. 是nodyn jar,用于嵌入JVM中,取决于nodejs二进制文件还是nodyn二进制文件?

回答

1

不,Nodyn不会调用另一个进程,也不依赖于任何特定的二进制文件,如nodejs。

Nodyn使用DynJS ECMAScript运行时,下面是一个“Java”解释器的纯Java实现。

+1

是正确的 - 没有调用另一个进程。 – lanceball 2015-02-05 12:40:48

0

如果你正在寻找一个简单的解决办法只是为了在JVM上执行JavaScript(你不需要Node.js的环境/生态系统),然后看看到的Java 8中Nashorn项目这是嵌入在JVM中的完整的JS引擎。

Nodyn用于在JVM中提供Node.js API。您不需要它在JVM中执行纯JavaScript。纳森就足够了。

相关问题