我正在尝试用这个模块安装npm i --save https://github.com/yagop/node-telegram-bot-api.git
。
我之所以避免使用npm i --save node-telegram-bot-api
,是因为我需要一些最近添加的方法(比如sendContact
)。
安装时,它将按预期添加到我的package.json
中:
"node-telegram-bot-api": "git+https://github.com/yagop/node-telegram-bot-api.git",
但是当我尝试运行使用这个模块的应用程序时,它说:
Error: Cannot find module './src/telegram'
在浏览了一下之后,发现缺少了src
和其他一些目录。以下是tree
输出:
$ tree ./node_modules/node-telegram-bot-api
./node_modules/node-telegram-bot-api
├── CONTRIBUTING.md
├── index.js
├── LICENSE.md
├── node_modules
(second one is skipped)
├── package.json
├── README.hbs
└── README.md
为什么?我怎么才能修好它呢?
我尝试npm cache clean
和rm -rf ./node_modules/node-telegram-bot-api
,重新安装,没有任何帮助。
发布于 2016-11-12 08:21:32
问题是存储库包含文件,在安装过程中忽略了以下文件和目录:
# lcov
coverage/
*.log
.package.json
# artifacts & source
README.hbs
output.md
output/
src/
test/
examples/
lib-doc/
# dotfiles
.travis.yml
.eslintrc
.eslintignore
.editorconfig
.babelrc
.gitignore
.git
因此,如果您想使用存储库中的最新版本,您需要下载并手动安装它。就像这样:
cd ./node_modules
git clone https://github.com/yagop/node-telegram-bot-api
cd ./node_modules/node-telegram-bot-api
npm install
Upd.:(imho)在这种情况下,为模块使用私有注册表是恰当的。例如,sinopia
。
https://stackoverflow.com/questions/40560334
复制相似问题