我正在使用windows上的node.js创建一个自动化的Web应用程序构建过程。我正在尝试通过Google封闭java程序运行我们的代码。我在节点文档中阅读了有关child_process的文档。它提到它在Windows中不起作用。是否有包装或解决此问题?
这是试图运行的代码。
var _exec = require('child_process').exec;
_exec( 'java ' + '-jar '+ COMPILER_JAR +' --js '+ srcPath +' --js_output_file '+ distPath,
function(e){
echo( "google closure done....");
echo( e );
} );
答案 0 :(得分:14)
我有一个用于在Windows XP上控制构建队列的Web服务器应用程序,我使用它来运行批处理文件或可执行文件,而无需任何其他软件包。
我会检查回调和stderr上的error参数,因为这可以帮助你找到它不起作用的原因。
我的服务器中的示例解决方案,我希望有所帮助:
var theJobType = 'FOO';
var exec = require('child_process').exec;
var child = exec('Test.exe ' + theJobType, function( error, stdout, stderr)
{
if ( error != null ) {
console.log(stderr);
// error handling & exit
}
// normal
});