nodemon不起作用:-bash:nodemon:找不到命令


72

我在运行El Capitan的Mac上。我有节点v5.6.0和npm v3.6.0。当我尝试运行nodemon时,我得到:

-bash: nodemon: command not found

我认为这可能意味着我没有安装nodemon,所以当我尝试使用...安装它时...

sudo npm install -g nodemon

...我得到这个:

npm ERR! Darwin 15.2.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g"     "nodemon"
npm ERR! node v5.6.0
npm ERR! npm  v3.6.0
npm ERR! path /usr/local/bin/nodemon
npm ERR! code EEXIST

npm ERR! Refusing to delete /usr/local/bin/nodemon: ../lib/node_modules/nodemon/nodemon.js symlink target is not controlled by         npm /usr/local
npm ERR! File exists: /usr/local/bin/nodemon
npm ERR! Move it away, and try again.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/brianeoneill/npm-debug.log

如果有什么不同,我正在尝试在使用Express v4.13.1的项目上运行nodemon

谢谢你的尽心帮助!


在尝试再次全局安装nodemon之前,您是否已卸载nodemon?npm uninstall nodemon
Sterling Archer

我尝试过,但没有用。但是,我只是尝试了sudo npm install -g --force nodemon,这似乎可以解决问题。谢谢你的帮助!!!!!
Brian O'Neill

可能是我的解决方案可以帮助您;)stackoverflow.com/questions/46505121/…–
谢尔盖·安德列夫

Answers:



55

如果要在本地而不是全局运行它,可以从node_modules运行它:

npx nodemon


编辑:可悲的是,我每次都想运行我的程序而不是在本地安装nodemon时,必须使用此命令。
jerseyetr

24

来自您自己的项目。

npx nodemon [your-app.js]

使用本地安装时,nodemon在您的系统路径中将不可用。相反,可以在npm脚本(例如npm start)中使用或使用来运行nodemon的本地安装npx nodemon

要么

创建一个简单的symbolik链接

ln -s /Users/YourUsername/.npm-global/bin/nodemon /usr/local/bin

ln -s [来自:在哪里安装'nodemon'] [到:文件夹,其中是节点的常规模块]

节点:v12.1.0

npm:6.9.0


18

在Windows操作系统中运行:

npx nodemon server.js

或添加package.json配置:

...
"scripts": {
    "dev": "npx nodemon server.js"
  },
...

然后运行:

npm run dev

12

我正在使用macOS / Linux,最适合我的解决方案是

npx nodemon index.js 

我尝试了所有可能的方法,例如卸载和安装nodemon,全局安装nodemon。重新启动终端,但无法正常工作。

不要尝试这样的事情来浪费您的时间。


6

我有相同的确切问题,期望用于Windows OS。

对我来说,跑步

npm install -g nodemon --save-dev

(注意-g)有效。

也许其他在Windows上有此问题的人也会有相同的解决方案。


--npm v5之后不再需要--save
MJ Montes

5

对于nodemon:not found命令,我尝试了许多链接,但是没有用,然后尝试了以下步骤,它工作正常。

遵循此步骤对我有用。

步骤1:须藤su

第二步:npm install -g nodemon --save-dev

运行正常。


4

由于我之前更改了npm软件包的全局路径,因此遇到了同样的问题。

这是我固定的方法:

当我使用:安装nodemonnpm install nodemon -g --save时,PATH变量中没有我的全局npm软件包路径。

如果仅将其添加到$ PATH变量中,它将得到修复。

编辑~/.bashrc您的主文件夹中的文件,并添加以下行:

export PATH=$PATH:~/npm

这里的“ npm”是我的全局npm软件包的路径。将其替换为系统中的全局路径


或添加以下行(如果您使用yarn):export PATH =“ $(yarn global bin):$ PATH”
Russo


2

对于窗口用户

我尝试了所有可能的方法,但没有任何效果。

起作用的是: -npx nodemon服务器

以下将是输出:- 在此处输入图片说明



1

在macOS中,我通过全局安装nodemon修复了此错误

npm install -g nodemon --save-dev 

并将npm路径添加到bash_profile文件中。首先,使用以下命令在nano中打开bash_profile,

nano ~/.bash_profile

其次,将以下两行添加到bash_profile文件中(我使用注释“ ##”,这使bash_profile更具可读性)

## npm
export PATH=$PATH:~/npm

1

确保您拥有npm的根目录,因此在不使用sudo的情况下安装全局软件包时不会出现任何错误。

程序:-在根目录中

sudo chown -R yourUsername /usr/local/lib/node_modules
sudo chown -R yourUsername /usr/local/bin/
sudo chown -R yourUsername /usr/local/share/

所以现在

npm i npm -g 

您没有错误,也没有在这里使用sudo。但是如果仍然出现错误,请 确认node_modules再次拥有

/usr/local/lib/

并确保你拥有一切

ls -la

在此处输入图片说明 现在

npm i -g nodemon

将工作!


1

只需编写对我有用的内容-(在Windows计算机上,将节点本地安装到项目中)如果您不想全局安装它(即不带-g标志),则必须使用

npx nodemon app

其中app是您的app.js是您要启动的程序文件。



0

--execarg放进去single quotation

例如,我改变了"nodemon --exec yarn build-langs""nodemon --exec 'yarn build-langs'"和工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.