获取:npm WARN 使用 --force 禁用推荐的保护

Posted

技术标签:

【中文标题】获取:npm WARN 使用 --force 禁用推荐的保护【英文标题】:Getting : npm WARN using --force Recommended protections disabled 【发布时间】:2022-01-07 20:30:57 【问题描述】:

我有一个在 Node 12 中开发的旧 Nuxt.js 包,我现在想在 Node 16(最新的稳定版)中使用它,但是当我尝试通过 npm install 安装我的包时,我得到了版本差异错误。

但我知道这些软件包是最新的。所以,我试图通过sudo npm cache clean -f 强制清除我的 npm 缓存,但我收到了这个错误:

npm WARN 使用 --force 禁用推荐的保护。

环境是ubuntu 20.04,这是我的package.json文件:


  "name": "frontend",
  "version": "1.0.0",
  "private": true,
  "scripts": 
    "dev": "nuxt",
    "build": "nuxt build",
    "start": "nuxt start",
    "generate": "nuxt generate"
  ,
  "dependencies": 
    "@nuxtjs/auth": "^4.9.1",
    "@nuxtjs/axios": "^5.13.6",
    "@nuxtjs/dotenv": "^1.4.1",
    "@nuxtjs/google-adsense": "^1.4.0",
    "@nuxtjs/gtm": "^2.4.0",
    "@nuxtjs/router": "^1.6.1",
    "better-vue-input-tag": "^1.1.0",
    "bootstrap": "^5.1.3",
    "bootstrap-vue": "^2.21.2",
    "core-js": "^3.19.2",
    "eslint": "^8.3.0",
    "jquery": "^3.6.0",
    "laravel-vue-pagination": "^2.3.1",
    "node-sass": "^6.0.1",
    "nuxt": "^2.15.8",
    "popper.js": "^1.16.1",
    "sass-loader": "^12.3.0",
    "vform": "^2.1.2",
    "vue-autosuggest": "^2.2.0",
    "vue-gtag": "^1.16.1",
    "vue-infinite-loading": "^2.4.5",
    "vue2-google-maps-withscopedautocomp": "^0.12.1"
  ,
  "devDependencies": 
    "eslint-config-prettier": "^8.3.0",
    "eslint-plugin-prettier": "^4.0.0",
    "ip": "^1.1.5",
    "prettier": "^2.5.0"
  

如何使用 force 标志而不出错?

编辑:

我因版本差异而遇到的错误:

【问题讨论】:

I'm getting the versions difference errors 是什么?此外,将sudonpm 一起使用通常不是一个好主意。有些软件包可能与节点 16 不兼容。上次我检查(几天前),如果我没记错的话,它仍然是 v14。谷歌上有一些结果与给定的错误,也许给它一个阅读。另外,如果您确实遇到了 NPM 问题并且调试起来很烦人,我建议您尝试使用 yarn 或 PNPM。 @kissu 首先谢谢你。我用谷歌搜索并检查了链接,但问题还没有解决。不,最新版本是 16,所以我需要将节点 16 用于我系统中的其他项目。顺便说一下,我会尝试使用纱线或 PNPM。谢谢。 这些是警告而不是错误。 @kissu 我想强制清除缓存。我该怎么做? 【参考方案1】:

您的设备上安装的当前版本的 Node 似乎存在问题。如果您尝试在先前安装的基础上重新安装,或者使用 @latest 命令,它将不起作用。请卸载 Node 然后从官网重新安装。

【讨论】:

【参考方案2】:

所以我遇到了和你一样的问题,我认为缓存不起作用,但实际上它起作用了它只是一个警告消息尝试这个命令npm cache verify 来验证缓存是否有效以及它是否有效解决了您的问题不在于缓存,但问题可能在于您的节点版本。

PS C:\code>  npm cache clean --force
npm WARN using --force Recommended protections disabled.
PS C:\code> npm cache verify
Cache verified and compressed (~\AppData\Local\npm-cache\_cacache)
Content verified: 0 (0 bytes)
Index entries: 0
Finished in 0.008s
PS C:\code>

【讨论】:

以上是关于获取:npm WARN 使用 --force 禁用推荐的保护的主要内容,如果未能解决你的问题,请参考以下文章

使用npm安装包报错“npm WARN npm npm does not support Node.js v17.1.0“

npm cache clean --force

npm WARN npm npm does not support Node.js v16.14.2 npm WARN npm You should probably upgrade to a new

npm WARN old lockfile package-lock.json 文件是使用旧版本的 npm 创建的

npm WARN没有存储库字段[重复]

npm WARN 已弃用 minimatch