运行nuxt项目时出错:"'nuxt'不是内部或外部命令"。

33

当我尝试在我的nuxt项目中运行npm run dev时,我的控制台返回了这个消息:

'nuxt' is not recognized as an internal or external command, 
operable program or batch file.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! andromeda@1.0.0 dev: `nuxt`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the andromeda@1.0.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

3
你的Node、npm和Nuxt版本是多少? - Andrew1325
9
你是否运行了 npm install 命令? - Phil
我已经尝试运行npm install。 nuxt@2.6.1 node v10.15.3 npm 6.4.1 - Marquezz
可能是 npm ERR! code ELIFECYCLE 的重复问题。 - Gino Mempin
9个回答

85

我解决了这个问题。

我在stackoverflow上寻找类似的问题,显然问题是npm缓存。

我将在下面提供一个解决方案的链接和我所做的快速示例。

答案链接: npm ERR! code ELIFECYCLE

步骤1:npm cache clean --force

步骤2:通过 $ rm -rf node_modules 文件夹或手动进入目录并右键单击 > 删除来删除 node_modules 文件夹。同时也要删除 package-lock.json 文件。

步骤3:npm install

重新启动,npm start

感谢所有花时间帮助我的人,真的非常感谢。


这个答案也解决了我在 nuxt-ts 中遇到的类似问题。谢谢! - Guillaume Voiron

16

请确保在您的 Nuxt 项目中已安装 nuxt:

$ cd /path/to/nuxt-project
$ npm list nuxt
nuxt-project@1.0.0 /path/to/nuxt-project
└── nuxt@2.6.3 

这里的/path/to/nuxt-project包含了你的package.jsonnode-modules

如果未安装,可以通过以下方式将nuxt添加到你的项目中:查看文档

$ npm install --save nuxt

或者将其放入您项目的package.json中,然后执行npm install

  "dependencies": {
    "nuxt": "^2.0.0"
  },

更新:


如果你仍然遇到“nuxt未被识别”的问题,请尝试使用来自node_modules目录中的nuxt的显式路径。

假设你有这个目录(在执行npm install --save nuxt之后):

nuxt-project
|- node_modules
   |- .bin
      |- nuxt
|- package.json

package.json 中更新 dev 命令为:

"scripts": {
  "dev": "node_modules/.bin/nuxt"
},

它仍然有相同的错误。 我的依赖项: "dependencies": { "nuxt": "^2.4.0", "cross-env": "^5.2.0", "bootstrap-vue": "^2.0.0-rc.11", "bootstrap": "^4.1.3", "@nuxtjs/axios": "^5.3.6" }, - Marquezz
@Marquezz 为了确保,您是在项目目录下运行 npm installnpm run dev 吗?当您执行 npm list nuxt 时会得到什么结果? - Gino Mempin
我确定我在正确的目录下。当我运行npm list nuxt时,我得到了以下结果: `-- nuxt@2.6.1 我在谷歌上搜索后发现,有些人在使用nuxt + windows 10时遇到了问题。 - Marquezz
1
@Marquezz 哦,好的。我更新了我的答案。尝试将dev命令更改为使用nuxt的显式node_modules路径。 - Gino Mempin
我按照这些步骤操作后,我的错误消失了。但是,在此之后,我必须使用 yarn install 来正确链接依赖项并运行 npm run dev - retr0

9
有时这会出现问题,因为您没有导出 node_modules/.bin 目录。
请将以下行放置或附加到您的 .bashrc.zshrc 文件中: export PATH=node_modules/.bin:$PATH

3
最近我遇到了同样的问题。
我的解决方法是更改package.json中脚本部分的路径,从这个路径:
  "scripts": {
    "dev": "nuxt",
    "build": "nuxt build",
    "start": "nuxt start",
    "generate": "nuxt generate"
  },

对此:
  "scripts": {
    "dev": "node_modules/.bin/nuxt",
    "build": "node_modules/.bin/nuxt build",
    "start": "node_modules/.bin/nuxt start",
     "generate": "node_modules/.bin/nuxt generate"
  },

0
  • 步骤1:rm -rf node_modules package-lock.json

  • 步骤2:npm cache clean --force

  • 步骤3:npm install(如果npm install无法工作,您可能需要添加--legacy-peer-deps或--force标志)

  • 重新开始,请使用npm start

  • 进行构建,请使用npm run build(ssr)或generate(csr)


0
安装项目后,您需要在package.json中安装软件包。

0

Nuxt 2 迁移到 Nuxt 3

请在 package.json 中更改您的 scripts,不再引用 nuxt-ts,而是直接引用 nuxt。例如:"dev": "nuxt-ts", -> "dev": "nuxt dev",, "generate": "nuxt-ts generate", -> "generate": "nuxt generate", 等等。


-3

这意味着nuxt没有安装。

尝试运行npm install nuxt


-4

全局安装 cross-env:

npm install -g cross-env

然后只需更新 package.json 脚本,以 "cross-env ...." 开头即可。

例如:

"scripts": {
    "dev": "cross-env nuxt",
    "build": "cross-env nuxt build",
    "start": "cross-env nuxt start",
    "generate": "cross-env nuxt generate",
    "lint": "eslint --ext .js,.vue --ignore-path .gitignore ."
},

这在我的Windows 10上可用。


3
cross-env和nuxt未定义有什么关系? - Blowsie

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接