繁体   English   中英

在 node js 服务器的终端中无法识别 nodemon 命令

[英]nodemon command is not recognized in terminal for node js server

我正在从https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens进行 node.js 服务器设置。 我是 node.js 的新手。 我正在安装npm install nodemon --save 但是当我用这个nodemon server.js运行服务器时。
在终端显示:

nodemon 不是内部或外部命令、可运行程序或批处理文件

在此处输入图像描述

node server.js命令正在运行并启动服务器,但nodemon命令不起作用。

我从https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens视频设置了节点 js 服务器。

我不知道为什么它不起作用我已经尝试了一些安装 nodemon 的命令。

npm install -g nodemon 
npm install -g nodemon --save 
npm install --save-dev nodemon 
npm install -g nodemon@debug 

npm install -g --force nodemon

我看到一个链接我无法全局安装nodemon,“nodemon”无法识别,但由于我的项目位置在D盘,我不知道如何设置路径。

我想运行nodemon server.js 如果有人有想法,请分享。 提前致谢。

你需要全局安装

npm install -g nodemon
# or if using yarn
yarn global add nodemon

然后它将在路径上可用(我现在看到你已经尝试过了但它没有用,你的路径可能搞砸了)

如果您想使用本地安装的版本,而不是全局安装,那么您可以在 package.json 中创建一个脚本

"scripts": {
    "serve": "nodemon server.js"
  },

然后使用

npm run serve

如果使用纱线,则可选

# without adding serve in package.json
yarn run nodemon server.js
# with serve script in package.json
yarn run serve

然后,npm 将在您的本地 node_modules 文件夹中查找,然后再在您的全局模块中查找命令

  1. 全局安装 nodemon:

     C:\>npm install -g nodemon
  2. 获取前缀:

     C:\>npm config get prefix

    您将在控制台中获得如下输出:

     C:\Users\Family\.node_modules_global

    复制它。

  3. 设置路径。
    转到高级系统设置→环境变量→单击新建(在用户变量下)→将显示弹出表单→传递以下值:

     variable name = path, variable value = Copy output from your console
  4. 现在运行 Nodemon:

     C:\>nodemon .

首先,编写 npm install --save nodemon 然后在 package.json 中编写以下内容

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

然后写

npm run server

无需全局安装 nodemon。 只需运行这个npx nodemon <scriptname.js> 而已。

我面临着同样的问题。 我已将 nodemon 安装为开发依赖项,当我尝试启动服务器时,它给出的消息是

nodemon 不是内部或外部命令、可运行程序或批处理文件

然后我全局安装它并尝试启动服务器并且它工作!

npm install -g nodemon

要使用 nodemon,您必须全局安装它。

对于 Windows

npm i -g nodemon

对于 Mac

sudo npm i -g nodemon

如果您不想全局安装它,可以通过运行命令npm i nodemon将其安装在本地项目文件夹中。 如果在本地运行,它会给出类似这样的错误:

nodemon : The term 'nodemon' is not recognized as the name of a
cmdlet, function, script file, or operable program. Check the spelling
of the name, or if a path was included, verify that the path is
correct and try again.

要删除此错误,请打开package.json文件并添加

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

然后运行命令

npm run server

你的 nodemon 将开始正常工作。

这可能来晚了,但最好说点什么:)

如果您不想安装 nodemon npx ,您可以使用 npx ,它会在运行时安装包,并将表现为全局包(请记住,它目前仅可用,并不存在于全局!)。

所以你只需要npx nodemon server.js

  • npx可以从npm@5.2.0版本及更高版本开箱即用。

需要全局安装吗? 你需要能够运行nodemon server.js吗? 如果没有,您总是可以从本地项目目录中调用它。 应该在这里:

node_modules/.bin/nodemon

这一行解决了我在 CMD 中的问题:

npm install --save-dev nodemon

我已经用这种方式修复了

  1. 卸载现有的本地 nodemon

    npm 卸载 nodemon

  2. 在全球范围内再次安装它。

    npm i -g nodemon

最好全局安装 nodemon,而不是作为项目的开发依赖项。

npm install -g nodemon

官方 NPM CDN:链接

这个包用于监控 javascript 文件的变化并重新运行 npm start 以便于开发目的。

我尝试在全球范围内安装 nodemon,但这对我不起作用。 每当我尝试运行它时,它总是向我显示错误:

nodemon : The term 'nodemon' is not recognized as the name of a
cmdlet, function, script file, or operable program. Check the spelling
of the name, or if a path was included, verify that the path is
correct and try again.

2.我为此找到了两种解决方案

解决方案1:

我尝试的是更新 package.json 文件中的“脚本” ,我已经添加了

"server": "nodemon app.js"

以上代码行和之后

npm run server

解决方案 2:

  1. 按 Windows 键。

  2. 在搜索框中输入“路径”并选择“编辑系统环境变量”

  3. 单击底部附近的“环境变量”。

  4. 在“系统变量”部分中,双击“路径”变量。

  5. 点击右侧的“新建”。

  6. 将其复制并粘贴到框中(替换 [用户名]):

C:\Users[用户名]\AppData\Roaming\npm

  1. 重新启动终端和 VSCode。

  2. 然后输入nodemon app.js运行 nodemon

我应用了解决方案 2,因为我们只需要运行 nodemon [filename.js]

由于节点前缀不在 PATH ENV 变量中,因此无法识别任何全局安装的模块。 请试试这个。 打开 cmd 提示 npm config get prefix 将生成的路径附加到 PATH 环境变量。 现在您应该能够从任何位置运行 nodemon。 尝试此链接并关注它。修复 npm 权限https://docs.npmjs.com/getting-started/fixing-npm-permissions#option-2-change-npms-default-directory-to-another-directory

您只需键入nodemon即可运行您的节点应用程序。首先运行 index.js 您可以轻松地将入口点放在该文件中。

如果你还没有安装 nodemon 那么你首先必须安装它

npm install -g nodemon

如果您有任何权限错误,请使用

sudo npm install -g nodemon

您可以通过以下方式检查 nodemon 是否存在

nodemon -v

对我来说,设置路径变量就足够了:

步骤 1)使用npm install -g nodemon

在此处输入图像描述

步骤 2)通过添加 npm path PATH 变量来设置ENVIRONMENT VARIABLES

1)打开控制面板,搜索环境变量

在此处输入图像描述

2)点击打开环境变量在此处输入图像描述

3) 创建新变量NPM将其设置为从 nodemon 安装 cmd 输出中显示的 npm 路径(从nodemon安装屏幕截图中可以看出):

在此处输入图像描述

4) 现在将NPM变量添加到PATH变量中:

在此处输入图像描述

步骤 3)关闭'cmd'并打开一个新的并输入nodemon --version 在此处输入图像描述

现在我们已经准备好使用 nodemon 了:)

在我的开发机器上创建新的用户配置文件后遇到了同样的问题。

问题是我没有以管理员身份运行控制台(命令提示符\powershell ISE)。

以管理员身份运行为我解决了这个问题。

只需全局安装

 npm install -g  nodemon

它在 Windows 10 上对我有用。

nodemon app.js

Set-ExecutionPolicy cmdlet 的默认执行策略对于 Windows 是受限的。 您可以通过将此策略设置为无限制来尝试安装 nodemon。

执行命令: Set-ExecutionPolicy Unrestricted然后尝试安装 nodemon 并执行命令: nodemon -v

如果在系统上禁用运行脚本,也可能出现此问题。 为了启用它:

  1. 以管理员身份运行打开 Windows PowerShell

  2. 执行:

    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

  3. npm install -g nodemon

  4. 节点监视器应用程序

几分钟前我遇到了同样的错误,这就是我解决它的方法:

1. 全局安装“nodemon”

npm install nodemon -g

2.然后需要在环境变量中添加npm路径

要查找路径,请在终端中执行以下操作:

npm config get prefix

您将获得如下所示的输出: C:\Users\user\AppData\Roaming\npm

如果您不确定如何在 Windows 上更新环境变量,请查看: 这里

3.使用“nodemon”再次运行应用程序在运行应用程序之前,创建一个新终端以确保终端识别环境变量中的更改。 然后运行:例如:

nodemon server.js

运行此命令:

npm install nodemon -g

现在它将安装nodemon,但我的问题是它正在其他地方安装nodemon。我从(ProgramFiles(x86))添加了Nodejs路径,但没有奏效,所以我找到了另一个解决方案。

  • 运行上面的命令
  • 安装过程中会显示一个安装nodemon的路径,然后[请转到下面的链接查看路径][1]

    [1]: https ://i.stack.imgur.com/ld2sU.png

  • 将路径复制到 npm 并将其设置为环境变量
  • 现在尝试下面的命令,希望它会运行

     nodemon YourAppName.js

以上所有选项都失败了,我得到了永久解决方案。 在依赖项下的package.json中添加以下行并run npm install 这会将 nodemon 包添加到node_modules中,然后就可以享受编码了。

"nodemon": "^1.17.*"

尝试在您的 packge.json 中:放入“./node_modules/.bin/nodemon” 而不仅仅是“nodemon”。 对我来说它有效。

这可以帮助我解决同样的问题来启动 nodemon 和 graphql 服务器

npm run dev

第 1 步: $ npm install nodemon --> 在您的项目上安装 nodemon

第 2 步:在 package.json 文件的脚本中添加 serve 为:

"scripts": {
    "serve": "nodemon app.js" // you can change file name accordingly 
}

第 3 步: $ npm run serve

首先,您需要使用以下命令全局安装 nodemon:“npm i -g nodemon”(适用于 Windows)和“sudo npm i -g nodemon”(适用于 Mac)然后运行“nodemon app.js”现在你会没事的。

以下内容在 Windows 11 上对我有用。

  1. 在终端中输入npm install (在与项目相同的目录中)
  2. 然后键入npm run serve从默认浏览器运行应用程序。

在此处输入图像描述

删除 nodemon 因为它是一个开发依赖项并使用 node 代替它。

"scripts": {
     "start": "node server.js"
 },

这对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM