我正在从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
我看过一个链接I can´t install nodemon globally, "nodemon" not recognized,但我不知道如何设置路径,因为我的项目位置在D盘中。
我想要nodemon server.js
。如果有任何机构有想法请分享。提前谢谢。
答案 0 :(得分:82)
您需要全局安装
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 :(得分:9)
首先,编写npm install --save nodemon 然后在package.json中写下以下内容
"scripts": {
"server": "nodemon server.js"
},
然后写
npm run server
答案 2 :(得分:7)
我遇到了同样的问题。我已经将nodemon安装为dev-dependency,当我尝试启动服务器时,它给出了消息
nodemon不被识别为内部或外部命令,可操作 程序或批处理文件
然后我全局安装它并尝试启动服务器并且它工作正常!
npm install nodemon -g
答案 3 :(得分:6)
答案 4 :(得分:3)
是否需要全局安装?你需要能够只运行nodemon server.js
吗?如果没有,您可以随时从本地项目目录中调用它。应该在这里:
node_modules/.bin/nodemon
答案 5 :(得分:2)
由于节点前缀不在PATH ENV变量中,因此无法识别任何全局安装的模块。 请试试这个。 打开cmd提示符 npm config获取前缀 将结果路径附加到PATH env变量。 现在您应该可以从任何位置运行nodemon。 尝试此链接并关注它。修复npm权限 https://docs.npmjs.com/getting-started/fixing-npm-permissions#option-2-change-npms-default-directory-to-another-directory
答案 6 :(得分:2)
无需全局安装nodemon。只需运行 npx nodemon
答案 7 :(得分:1)
最好全局安装 nodemon,而不是作为项目的开发依赖项。
npm install -g nodemon
官方 NPM CDN:Link
此包用于监控 javascript 文件中的更改并重新运行 npm start 以便于开发目的。
答案 8 :(得分:1)
对我来说,设置路径变量足以解决:
步骤 1) 使用 npm install -g nodemon
步骤 2) 设置 ENVIRONMENT VARIABLES
,通过添加 npm path PATH 变量
1) 打开控制面板,搜索环境变量
3) 创建新变量 NPM
,将其设置为 nodemon 安装 cmd 输出中显示的 npm 路径(如 nodemon
安装屏幕截图所示): >
4) 现在将 NPM
变量添加到 PATH
变量中:
步骤 3) 关闭“cmd”并打开一个新的并输入 nodemon --version
现在我们可以使用 nodemon 了:)
答案 9 :(得分:1)
我尝试在全球范围内安装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键。
在搜索框中键入“路径”,然后选择“编辑系统环境变量”
单击底部附近的“环境变量”。
在“系统变量”部分中,双击“路径”变量。
单击右侧的“新建”。
将其复制并粘贴到框中(替换[Username]):
C:\ Users [用户名] \ AppData \ Roaming \ npm
重新启动终端和VSCode。
然后键入nodemon app.js
以运行nodemon
我应用了解决方案2,因为我们只需要运行nodemon [filename.js]
答案 10 :(得分:1)
删除nodemon,因为它是开发人员依赖项,请使用node代替它。
"scripts": {
"start": "node server.js"
},
这对我有用。
答案 11 :(得分:1)
这一行解决了我在CMD中的问题:
npm install --save-dev nodemon
答案 12 :(得分:0)
在我的开发计算机上创建新的用户个人资料后,也遇到了同样的问题。
问题是我没有以管理员身份运行控制台(命令提示符\ powershell ISE)。
以管理员身份运行为我解决了这个问题。
答案 13 :(得分:0)
以上所有选项均失败,为此我获得了永久解决方案。
在依赖项和run npm install
下的 package.json 中添加以下行。这会将nodemon软件包添加到 node_modules ,然后您就可以开始享受编码了。
"nodemon": "^1.17.*"
答案 14 :(得分:0)
要使用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": "node server.js"
},
然后运行命令
npm run server
,您的nodemon将开始正常工作。
答案 15 :(得分:0)
这可能要晚了,但是最好说些什么:)
如果您不想安装nodemon globbaly,则可以使用npx
,它会在运行时安装该软件包,并且会像全局软件包一样工作(请注意,该软件包目前仅可用,并且不可用全球存在!)。
所以您只需要npx nodemon server.js
。
npx
可以从npm@5.2.0
版本开始使用。答案 16 :(得分:0)
只需全局安装
npm install -g nodemon
它在Windows 10上对我有用。
nodemon app.js
答案 17 :(得分:0)
对于Windows,Set-ExecutionPolicy cmdlet的默认执行策略为“受限”。 您可以通过将此策略设置为Unrestricted来尝试安装nodemon。
执行命令:Set-ExecutionPolicy Unrestricted
然后尝试安装nodemon并执行命令:nodemon -v
答案 18 :(得分:0)
我已经通过这种方式固定
卸载现有的本地节点
npm卸载nodemon
再次在全局进行安装。
npm i -g nodemon
答案 19 :(得分:0)
运行此命令:
npm install nodemon -g
现在它将安装nodemon,但是我的情况是它正在其他地方安装nodemon。我从(ProgramFiles(x86))添加了Node.js路径,但是没有用,所以我找到了另一个解决方案。
在安装过程中将显示一个路径,其中安装了nodemon,然后 [请转到下面的链接查看路径] [1]
现在尝试以下命令,希望它将运行
nodemon YourAppName.js
答案 20 :(得分:0)
试试你的 packge.json: 放置“./node_modules/.bin/nodemon”而不是“nodemon”。 对我来说它有效。
答案 21 :(得分:-1)
您只需输入nodemon
即可运行您的节点应用
它首先运行index.js
您可以轻松地将入口点放在该文件中。
如果尚未安装nodemon,则首先必须通过以下方式进行安装
npm install -g nodemon
如果您遇到任何权限错误,请使用
sudo npm install -g nodemon
您可以通过
检查nodemon是否存在nodemon -v