我使用nodemon
安装了npm i -g nodemon
,它安装在全局路径中,即:
C:\User\John\AppData\漫游
因此,我使用npm i -y
启动了一个新项目,并使用以下方法创建了一个简单的index.js
入口点:
{
"name": "scp",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.17.1",
"jsonwebtoken": "^8.5.1"
}
}
当我使用nodemon
启动应用程序时,我得到了:
Files\nodejs\node_modules\nodemon\bin\nodemon.js‘错误:找不到模块C:\
正如您所看到的,路径实际上是错误的,所以我尝试使用以下方法来更改它:
npm config set prefix C:\Users\John\AppData\Roaming
npm config get prefix
而这个回报是:
C:\User\John\AppData\漫游
问题在于,当我使用nodemon
启动应用程序时,我会得到相同的错误消息,因为路径总是错误的:
Files\nodejs\node_modules\nodemon\bin\nodemon.js‘错误:找不到模块C:\
我怎么才能解决这个问题?
发布于 2020-05-19 01:29:22
您是否可以尝试在当前的package.json中安装nodemon:
npm i --save nodemon
然后将开始脚本更改为
"start": "nodemon index.js"
希望它对你有用
发布于 2020-07-14 08:24:43
另一个导致类似错误的问题是在路径名称中的任何地方使用"&“。npm会将软件包安装在正确的位置('foobar&foobar/myApp/node_modules‘文件夹),但是一些包文件的路径将是错误的。修复方法是重命名具有"&“(foobar&foobar --> foobarAndfoobar)的文件夹,并在安装node_modules包的地方运行以下命令:
rm -rf node_modules
npm install
我希望这能给遇到我问题的人留下一个头痛的问题。
发布于 2020-05-19 01:27:53
您可以始终将nodemon
作为dev依赖项,并在package.json
的脚本部分中指定它。当您需要它时,您不需要在全局安装它。
例如。(package.json)
"scripts": {
"start": "nodemon index.js"
},
关于你最初的问题。它必须与npm/节点的配置有关。我建议使用类似NVM的方法,在本地处理多个npm/节点实例和配置。对于任何使用节点的开发人员,我总是建议使用它。
看看它,https://github.com/coreybutler/nvm-windows,并尝试使用本地版本的npm来了解问题的来源。请注意,当前(全局)节点安装可能与NVM one (bin路径)冲突。因此,您可能只需要使用来自NVM的npm/节点,并去掉全局节点。
https://stackoverflow.com/questions/61887598
复制相似问题