Я только что установил node.js для Windows, и было действительно легко запустить его. Я хотел бы использовать его как часть процесса сборки для объединения нескольких файлов, например, так:
// settings
var FILE_ENCODING = 'utf-8',
EOL = '\n',
DIST_FILE_PATH = 'dist/myAwesomeScript.js';
// setup
var _fs = require('fs');
function concat(fileList, distPath) {
var out = fileList.map(function(filePath){
return _fs.readFileSync(filePath, FILE_ENCODING);
});
_fs.writeFileSync(distPath, out.join(EOL), FILE_ENCODING);
console.log(' '+ distPath +' built.');
}
concat([
'foo/bar.js',
'foo/lorem.js',
'foo/maecennas.js'
], DIST_FILE_PATH);
Это действительно работает как шарм. Однако это работает, только если я помещаю все свои скрипты в каталог nodejs, который находится в C: \ Program Files (x86) \ nodejs, и запускаю процесс cmd с правами администратора.
Но мне нужно, чтобы мои файлы проекта находились в другом каталоге (скажем, D: \ git \ projectx \), и я хотел бы иметь возможность запускать: node.exe D: \ git \ projectx \ comb.js. К сожалению, все не работает таким образом, потому что node.exe будет искать файлы в своем собственном каталоге, который находится в C: \ Program Files (x86) \ nodejs. Должен отсутствовать запуск процесса nodejs и указание использовать другой каталог в качестве рабочего каталога, я не прав?
UPDATE
Как кто-то указал на IRC. Решение моей проблемы было довольно простым. Просто cd
в D:\git\projectx
и затем используйте node.exe combine.js
. Это делает так, чтобы текущий каталог в вашем скрипте указывал на D:\git\projectx
Однако я принимаю ответ Люка, так как он, похоже, тоже правдив; -)