8

CLI にシェルアウトせずに Node から直接 Grunt タスクを実行するにはどうすればよいですか?

次の「POC」コードがあります。ただし、「もの」はログに記録されません。

var grunt = require('grunt');

grunt.registerTask('default', 'Log some stuff.', function() {
    console.log('stuff');
});

grunt.task.run('default'); // This is probably not the right command

私はGruntにかなり慣れていないので、おそらく明らかな何かが欠けています。タスクを「実行」するために使用しているコマンドは、タスクをキューに入れているだけで、実際には実行を開始していないと思われます。ただし、手動で実行するためのドキュメントは見つかりません。

4

4 に答える 4

4

それには多くの時間がかかり、最終的にはすでに機能しています

   var util = require('util')
    var exec = require('child_process').exec;
    var child = exec("/usr/local/bin/grunt --gruntfile /path/to/Gruntfile.js", function (error, stdout, stderr) {
      util.print('stdout: ' + stdout);
      util.print('stderr: ' + stderr);
      if (error !== null) {
        console.log('exec error: ' + error);
      }
    });
于 2016-04-20T15:22:24.827 に答える