[英]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 文件夹中查找,然后再在您的全局模块中查找命令
全局安装 nodemon:
C:\>npm install -g nodemon
获取前缀:
C:\>npm config get prefix
您将在控制台中获得如下输出:
C:\Users\Family\.node_modules_global
复制它。
设置路径。
转到高级系统设置→环境变量→单击新建(在用户变量下)→将显示弹出表单→传递以下值:
variable name = path, variable value = Copy output from your console
现在运行 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
我已经用这种方式修复了
卸载现有的本地 nodemon
npm 卸载 nodemon
在全球范围内再次安装它。
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:
按 Windows 键。
在搜索框中输入“路径”并选择“编辑系统环境变量”
单击底部附近的“环境变量”。
在“系统变量”部分中,双击“路径”变量。
点击右侧的“新建”。
将其复制并粘贴到框中(替换 [用户名]):
C:\Users[用户名]\AppData\Roaming\npm
重新启动终端和 VSCode。
然后输入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
在我的开发机器上创建新的用户配置文件后遇到了同样的问题。
问题是我没有以管理员身份运行控制台(命令提示符\powershell ISE)。
以管理员身份运行为我解决了这个问题。
只需全局安装
npm install -g nodemon
它在 Windows 10 上对我有用。
nodemon app.js
Set-ExecutionPolicy cmdlet 的默认执行策略对于 Windows 是受限的。 您可以通过将此策略设置为无限制来尝试安装 nodemon。
执行命令: Set-ExecutionPolicy Unrestricted
然后尝试安装 nodemon 并执行命令: nodemon -v
如果在系统上禁用运行脚本,也可能出现此问题。 为了启用它:
以管理员身份运行打开 Windows PowerShell
执行:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
npm install -g nodemon
节点监视器应用程序
几分钟前我遇到了同样的错误,这就是我解决它的方法:
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
现在尝试下面的命令,希望它会运行
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”现在你会没事的。
删除 nodemon 因为它是一个开发依赖项并使用 node 代替它。
"scripts": {
"start": "node server.js"
},
这对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.