Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 错误:找不到模块'/lib/cli';_Javascript_Npm - Fatal编程技术网

Javascript 错误:找不到模块'/lib/cli';

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

我是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.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