我正在构建一个在Node.js中使用Java的应用程序.我创建了一个函数来检查Java版本:
function javaversion() {
var spawn = require('child_process').spawn('java', ['-version']);
spawn.stderr.on('data', function(data) {
data = data.toString().split('\n')[0];
var javaVersion = new RegExp('java version').test(data) ? data.split(' ')[2].replace(/"/g, '') : false;
if (javaVersion != false) {
// TODO: We have Java installed
} else {
// TODO: No Java installed
}
});
}
Run Code Online (Sandbox Code Playgroud)
但对于未安装Java的系统,Node.js会抛出ENOENT错误,因为模块"child_process"无法生成进程.如何验证是否从Node.js安装了Java?
我感谢您的帮助!
我制作了相同的程序来测试Mac OS X上的Nodejs和C++的性能.
首先在C++中:
#include <iostream>
#include <time.h>
using namespace std;
int main() {
clock_t t1, t2;
cout << "Initializing\n";
t1 = clock();
double m = 0;
for (double i = 0; i != 10000000000; ++i) {
m = i * -1 + i;
}
t2 = clock();
float diff = (((float) t2 - (float) t1) / 1000000.0F) * 1000;
cout << "Finalizing with " << diff << "ms\n";
}
Run Code Online (Sandbox Code Playgroud)
Nodejs中的第二个:
console.log("Initializing");
t1 = Date.now();
var m = 0;
for …Run Code Online (Sandbox Code Playgroud)