Я написал модуль, который недавно опубликовал для npm (https://npmjs.org/package/wisp)
Так что он отлично устанавливается из командной строки:
$ npm i -g wisp
Однако, когда я запускаю его из командной строки, я получаю сообщение об ошибке, что оптимист не установлен:
$ wisp
Error: Cannot find module 'optimist'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/usr/local/lib/node_modules/wisp/wisp:12:10)
at Object.<anonymous> (/usr/local/lib/node_modules/wisp/wisp:96:4)
at Module._compile (module.js:449:26)
at Object.exports.run (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/coffee-script.js:68:25)
at compileScript (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/command.js:135:29)
at fs.stat.notSources.(anonymous function) (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/command.js:110:18)
Тем не менее, я указал в package.json как зависимость:
{
"name": "wisp",
"author": "Brendan Scarvell <bscarvell@gmail.com>",
"version": "0.1.0",
"description": "Global nodejs file server",
"dependencies": {
"optimist": "~0.3.4"
},
"repository": "git://github.com/tehlulz/wisp",
"bin": {
"wisp" : "./wisp"
}
}
Кто-нибудь знает, что нужно сделать, чтобы это заработало? Я знаю, что это связано с тем, что часть bin добавляет исполняемый файл в bin, а node_modules в этом каталоге пустые. Не знаю, как решить эту проблему.
./node_modules/wisp/wisp
который работает отлично.