NPM安装错误意外令牌

时间:2018-07-16 09:31:42

标签: node.js npm npm-install

我正在使用npm install并验证包json是否有效,并且收到以下错误:

在网络上阅读后,我做了"rm -f package-lock.json && npm install"(即使我没有看到那里的任何包裹锁) 并确实提供了帮助的npm cache clean -f,还配置了注册表

请参阅Can't install any package with node npm

我使用最新的npm 6.2.0

日志中的错误为。

159 silly saveTree ├── express@4.16.3
159 silly saveTree ├── passport-http@0.3.0
159 silly saveTree └── passport@0.3.2
160 verbose stack SyntaxError: Unexpected token < in JSON at position 0 while parsing near '<html>
160 verbose stack <head><title>...'
160 verbose stack     at JSON.parse (<anonymous>)
160 verbose stack     at parseJson (/usr/local/lib/node_modules/npm/node_modules/json-parse-better-errors/index.js:7:17)
160 verbose stack     at consumeBody.call.then.buffer (/usr/local/lib/node_modules/npm/node_modules/node-fetch-npm/src/body.js:96:50)
160 verbose stack     at <anonymous>
160 verbose stack     at process._tickCallback (internal/process/next_tick.js:188:7)

还有什么我可以做的吗?因为目前我被卡住了,所以任何想法都会有所帮助:(

5 个答案:

答案 0 :(得分:2)

执行以下操作:

  1. 删除node_modules文件夹。

  2. 删除package-lock.json文件。

  3. 再次运行npm install

答案 1 :(得分:1)

您的package.json或其他json文件不正确,您必须首先修复JSON错误。

答案 2 :(得分:0)

这对我有用:

rm -rf node_modules
rm package-lock.json
npm cache verify
npm install

答案 3 :(得分:0)

删除节点模块和程序包锁定JSON文件可以在很多情况下解决此问题。

这些是要遵循的步骤:

  1. 删除node_modules文件夹。

  2. 删除package-lock.json文件。

  3. 验证缓存

  4. 再次运行npm install

让我们使用 rimraf

  1. 全局安装rimraf

    npm安装rimraf -g

  2. 删除节点模块

    rm -rf node_modules

  3. 删除package-lock.json

    rimraf package-lock.json

  4. 验证缓存

    npm缓存验证

  5. 重新安装模块

    npm安装

答案 4 :(得分:0)

适用于已删除 node_modules 并在 npm install 之后遇到错误的人。 如果您在 package.json 下有这样的预安装脚本,这也可能是一个问题:

"scripts": {
  "preinstall": "npx npm-force-resolutions",
....

由于 npm-force-resolutions 寻找要解析的 node_modules。要修复它,只需注释预安装脚本,运行 npm install,然后恢复注释并再次运行 npm install 以保持验证。