Javascript 错误:找不到模块'/lib/cli';
我是javascript开发的新手,在阅读《主干网蓝图》一书时,我遇到了以下错误。以下是我得到的错误:Javascript 错误:找不到模块'/lib/cli';,javascript,npm,Javascript,Npm,我是javascript开发的新手,在阅读《主干网蓝图》一书时,我遇到了以下错误。以下是我得到的错误: > simple-blog@0.1.0 start /Users/noahc/Projects/backbone_blueprints/blog > nodemon server.js module.js:340 throw err; ^ Error: Cannot find module '../lib/cli' at Function.M
> simple-blog@0.1.0 start /Users/noahc/Projects/backbone_blueprints/blog
> nodemon server.js
module.js:340
throw err;
^
Error: Cannot find module '../lib/cli'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/noahc/Projects/backbone_blueprints/blog/node_modules/.bin/nodemon:3:11)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
npm ERR! Darwin 14.1.0
npm ERR! argv "node" "/usr/local/bin/npm" "start"
npm ERR! node v0.10.33
npm ERR! npm v2.1.11
npm ERR! code ELIFECYCLE
npm ERR! simple-blog@0.1.0 start: `nodemon server.js`
npm ERR! Exit status 8
npm ERR!
npm ERR! Failed at the simple-blog@0.1.0 start script 'nodemon server.js'.
npm ERR! This is most likely a problem with the simple-blog package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! nodemon server.js
npm ERR! You can get their info via:
npm ERR! npm owner ls simple-blog
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/noahc/Projects/backbone_blueprints/blog/npm-debug.log
☹ ~/Projects/backbone_blueprints/blog npm install ruby-2.1.3
npm WARN package.json simple-blog@0.1.0 No repository field.
npm WARN package.json simple-blog@0.1.0 No README data
这是:
☹ ~/Projects/backbone_blueprints/blog which node ruby-2.1.3
/usr/local/bin/node
☺ ~/Projects/backbone_blueprints/blog which npm ruby-2.1.3
/usr/local/bin/npm
我认为这可能是一个路径问题,所以我在.zshrc文件中添加了export NODE_path=/opt/lib/NODE_modules
,并将其来源化,这似乎没有任何影响
有什么想法吗?我可以解决这个问题,或者试着更好地理解实际发生的事情吗?我找到了修复方法。我必须全局安装nodemon,这样做:
npm install nodemon-g
我的解决方案是删除目录/node\u modules/,然后使用npm install
重新安装
我使用的是
量角器--elementExplorer
,它对我有效您可以尝试执行以下操作
npm uninstall nodemon
npm install nodemon
NodeMon正在自己的目录中查找其
。/lib/cli
文件夹,但没有找到它。你的安装可能很糟糕。当您使用finder将项目从一个文件夹复制到另一个文件夹时,有时会发生这种情况
如果您清除了node_modules目录并从头重新安装,则应恢复该文件夹
cd your_project_folder
rm -rf node_modules
npm install
编辑:
你也可以用纱线
cd your_project_folder
rm -rf node_modules
yarn
量角器已更改位置。lib/build量角器文件现在位于包的build目录中。您应该能够将IDE定向到build/cli.js 这对我有用 检查他们的Github问题链接:
对我来说,npm坏了,可能是因为我在某个时候用sudo运行了它 我需要修复brew,升级/更新
brew uninstall node
sudo chown -R $(whoami) /usr/local/*
brew cleanup
brew install node
因此,npm在package.json文件和node_modules/.bin目录中声明了可执行文件的模块之间创建了一个符号链接 阅读理解 Axel Rauschmayer博士 使用macos finder、windows文件资源管理器或命令行复制项目目录及其node_modules文件夹时,此符号链接将被销毁。因此,对节点_modules/.bin目录上的符号链接文件的调用不能命中假定的包 在您的情况下,它是nodemon。手动修复此运行
ln-s./node\u modules/nodemon/bin/nodemon.js./node\u modules/.bin/nodemon
对于任何其他包,请检查其package.json中的“bin”:{}
键,并查看符号链接的可执行文件,然后修改上面的链接命令,并根据运行
brew uninstall node
brew upgrade
brew install node
brew link --overwrite node
npm -v
为我工作。我有这个错误,把它留在这里以防对任何人都有帮助 我安装了Thread,显然把我的节点安装搞砸了,试图通过卸载东西来修复它,弄得一团糟。Brew无法成功安装node(旧操作系统可能已用完LTS,从源代码安装无法使npm正常工作) 甚至 将给出错误(因此与节点_模块无关)。 最后,通过使用来自的包管理器安装节点修复了此问题
这就是所需要的一切。无需卸载。我将其解读为“无恶魔”整整五分钟。。要是有人能写这个包就好了。我不喜欢安装全球npm。如果
nodemon
是项目的依赖项,我宁愿将/node\u modules/.bin
添加到我的$PATH
npm
中,在包.json的脚本“
部分中这样做。因此,您可以使用类似于“start dev”:“nodemon--exec DEBUG=app*node_modules/.bin/babel node--app/start.js”
。可以确认,在我更改根目录名(并且npm run
停止工作rm-rf node_modules/&&npm I
之后,这一操作对我来说也是一个解决方案。)(至少一个原因)原因-当您复制node\u modules
目录时(例如使用cp
时),可能会发生这种情况。默认情况下,.bin
目录包含指向已安装软件包的符号链接。cp
默认情况下不保留链接,因此您最终会在.bin
目录中找到实际文件。这就是打破require()的原因功能。吹走node_模块
并运行npm安装
恢复本应存在的符号链接。别忘了也擦除package-lock.json。rm-package-lock.json
。总之:rm-rf node_模块/&rm package-lock.json&&npm i
这很有效,谢谢你这最终对我有效,我也是。谢谢。请补充说明
brew uninstall node
brew upgrade
brew install node
brew link --overwrite node
npm -v
npm -v
brew link --overwrite node