ERROR: npm v9.4.1 is known not to run on Node.js v8.13.0.

news2025/1/31 2:52:10

前面全是废话,大家可以直接看序号8下面的nvm的命令以及序号11之后的问题解决,希望能帮助到你们!

  1. 是个什么问题呢?昨天领导给了个前后端分离的项目,让不才我搭建一下环境,我兴高采烈的拿着项目搭建手册按照文档上那近乎于完美的搭建步骤把后端运行起来了,如下为文档里面全部的后端搭建步骤:

  1. 正当我开香槟的时候,发现前端搭建出了点问题,不急兄弟们,咱们先看看文档怎么说,上文档:

  1. 相信小伙伴们都发现了一个很刺眼的东西,对!就是这个node版本,它怎么就这么低呢。。是的,现阶段只要我们接触到前端,就必然会涉及到安装node的操作。原本呢,我本地是有安装一个node的,但是它是最新的18.xx.x的版本。运行前端的时候呢,它就会报一个版本过高的问题,所以,在下不得不降低node版本,从而适应项目的运行需求。那么我是怎么做的呢?且听我讲来:

  1. 我呢,在控制面板里面卸载掉了node,然后把同事的node拷过来直接安装了,安装完成之后在cmd里面测试是否安装成功,结果出现了什么问题呢?

  1. 哎你说气不气人!不是说只要安装了node,npm就自动安装好了吗?这是什么情况?于是乎,我查了一下我的环境变量,发现确实有一个关于npm的路径,顺着路径找到我的c盘的文件夹,发现npm的文件夹是空的。。这我就一下子懵逼了!

  1. 后来我看了一下同事安装的node,他的就没问题,并且项目也能正常启动,于是乎我查阅了相关资料,后来发现有个叫node版本控制工具的东西,叫nvm,我就下载了一下,因为是国外的网站,我还费了一番周折,不过好在还是被小生下载下来了:

  1. 就是这个啦!

这个东西呢,它特别好用,小伙伴们如果有需要,下载好之后呢,先配置一下环境。因为呢,nvm默认会从github下载npm,可能会有网络问题,所以最好设置为淘宝镜像。nvm的配置也很简单,可以采用命令方式,在shell中执行:

nvm node_mirror https://npm.taobao.org/mirrors/node/
nvm npm_mirror https://npm.taobao.org/mirrors/npm/
  1. 这样的话,使用nvm下载node就会很快速,该快的时候还是得快!

那么nvm怎么使用呢?不慌,让我来给大家摆几个常用的命令:

  • nvm arch :显示node是运行在32位还是64位。

  • nvm install <version> [arch] :安装node, version是特定版本也可以是最新稳定版本latest。可选参数arch指定安装32位还是64位版本,默认是系统位数。可以添加–insecure绕过远程服务器的SSL。

  • nvm list [available] :显示已安装的列表。可选参数available,显示可安装的所有版本。list可简化为ls。

  • nvm on :开启node.js版本管理。

  • nvm off :关闭node.js版本管理。

  • nvm proxy [url] :设置下载代理。不加可选参数url,显示当前代理。将url设置为none则移除代理。

  • nvm node_mirror [url] :设置node镜像。默认是https://nodejs.org/dist/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。

  • nvm npm_mirror [url] :设置npm镜像。https://github.com/npm/cli/archive/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。

  • nvm uninstall <version> :卸载指定版本node。

  • nvm use [version] [arch] :使用制定版本node。可指定32/64位。

  • nvm root [path] :设置存储不同版本node的目录。如果未设置,默认使用当前目录。

  • nvm version :显示nvm版本。version可简化为v。

  1. 但是!当我以为是同事给的安装包有问题所以卸载掉,重新在nvm里面用命令安装好之后,发现还是会出现npm -v环境变量的问题:

  1. 所以我又卸载了6.3.1的node版本,安装了更高的版本,如图所示,又出现了标题上面的问题:ERROR: npm v9.4.1 is known not to run on Node.js v11.15.0.

  1. 就是说呢,目前的node版本和npm版本不适配,需要升级node版本才能继续使用,但是我的项目呢,似乎只能用6.3.1左右的node版本,所以升级是不可能了。没办法,我又把这个版本的node卸载掉了。此时呢,我萌生出了一个想法,6.3.1版本的node安装之后没有npm相关的文件夹,那我要不要先试试安装更高版本的node,让npm.cmd的文件出现,因为我看到有个文章说到,需要修改npm.cmd的配置,所以我又下载了16.14.0,我尝试着运行了一下:

  1. 总之还是版本的问题,浪费了很长时间之后,我又卸载掉16.14.0,安装了跟6.3.1比较接近的8.13.0版本的node,并且很神奇的在nvm的安装路径下找到了npm.cmd的脚本文件:

  1. 我很自然的修改掉配置文件里面的内容:

将 prefix --g 修改成了 prefix --location=global

结果,项目启起来了!普天同庆!!!我真的麻了,弄了大半天终于好了。。。谨以此篇记录自身问题以求上进以及避免其他小伙伴们踩坑!总之呢,弄到最后还是版本以及配置文件的问题,有不足之处希望小伙伴们多多指正!谢谢小伙伴们的观看,希望能帮到你们,咱们共同进步!谢谢大家!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/407658.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序开发 app.json全局配置

JSON 是一种数据格式&#xff0c;在实际开发中&#xff0c;JSON 总是以配置文件的形式出现。app.json 是当前小程序的全局配置&#xff0c;可以通过app.json对小程序项目进行设置所有页面路径、窗口外观、界面表现、底部 tab 等。{"pages": ["pages/index/index…

vue中实现文件批量打包压缩下载(以及下载跨域问题分析)

上次做了一个选择多个数据生成多个二维码并下载&#xff0c;当时项目催的紧&#xff0c;就简单写了个循环生成二维码下载&#xff0c;一次性会下载很多文件&#xff0c;特别难整理&#xff1b; 刚好这次项目又遇到类似这种功能&#xff0c;需要一次性批量下载多个文件&#xf…

浅谈uniapp的flex布局

文章目录1 flex布局1.1 flex-direction1.2 flex-wrap1.3 justify-content1.4 align-items1.5 align-content属性1.6 其他项目属性1.6.1 order属性1.6.2 flex-grow属性1.6.3 flex-shrink属性1.6.4 flex属性1 flex布局 ​ flex是Flexible Box的缩写&#xff0c;意为”弹性布局”…

TypeError: this.$message is not a function报错情况解决

在最近负责的一个前端项目中&#xff0c;使用this.$message报错了&#xff0c;之前也没注意&#xff0c;然后这次抽空看了一下问题 报错原因是因为我用了这种提示写法&#xff1a; 首先&#xff0c;我最开始是用基础写法&#xff1a; 但是这种写法有个弊端&#xff0c;就是如…

【JS 构造|原型|原型链|继承(圣杯模式)|ES6类语法】上篇

⌚️⌚️⌚️个人格言&#xff1a;时间是亳不留情的&#xff0c;它真使人在自己制造的镜子里照见自己的真相! &#x1f4d6;Git专栏&#xff1a;&#x1f4d1;Git篇&#x1f525;&#x1f525;&#x1f525; &#x1f4d6;JavaScript专栏&#xff1a;&#x1f4d1;js实用技巧篇…

腾讯地图api使用——地图选点自动定位到当前位置

WebService API | 腾讯位置服务 用户在使用腾讯地图api时&#xff0c;需先申请腾讯位置服务API Key&#xff0c;该key在调用时用于唯一标识开发者身份。 1.自动获取当前位置 引入以下js文件 https://mapapi.qq.com/web/mapComponents/geoLocation/v/geolocation.min.js //获…

FAST_LIO_SAM 融入后端优化的FASTLIO SLAM 系统 前端:FAST_LIO2 后端:LIO_SAM

FAST_LIO_SAM Front_end : fastlio2 Back_end : lio_sam Videos : FAST-LIO-SAM Bilibili_link Source code : FAST_LIO_SAM Related worked 1.FAST-LIO2为紧耦合的lio slam系统&#xff0c;因其缺乏前端&#xff0c;所以缺少全局一致性&#xff0c;参考lio_sam的后端部分&…

Vue3 reactive丢失响应式问题

问题描述&#xff1a;使用 reactive 定义的对象&#xff0c;重新赋值后失去了响应式&#xff0c;改变值视图不会发生变化。 测试代码&#xff1a; <template><div><p>{{ title }}</p><ul><li v-for"(item, index) in tableData" …

【小程序】组件化开发的基本使用(一)

文章目录小程序组件化开发基本使用小程序组件化思想自定义组件的过程组件样式实现细节小程序组件化开发基本使用 小程序组件化思想 组件插槽定义使用 小程序在刚刚推出时是不支持组件化的, 也是为人诟病的一个点&#xff1a; 但是从v1.6.3开始, 小程序开始支持自定义组件开发…

如何创建一个简易的HTML网页框架

背景&#xff1a; 在我们初步学习了web前端开发的一些知识时&#xff0c;我们可能会考虑构建一个简单的html网站&#xff0c;但是&#xff0c;如何着手去开始我们的网站&#xff0c;对于新手来说可能是个问题。 在这篇文章中&#xff0c;我将介绍我在构建一个简易的网页时&am…

Vue2中使用axios的三种方法

第一种 原始方法 直接在项目中使用(不建议使用) 这种方法最简单粗暴 优点&#xff1a;不需要做封装&#xff0c;不需要做配置傻瓜式操作&#xff0c;不需要做异步处理 缺点&#xff1a;代码太繁琐&#xff0c;当遇到请求过多的时候&#xff0c;这样写不适合读写 注意&#…

使用videojs播放m3u8视频

vue3使用videojs 播放m3u8格式视频 videojs是一个播放视频的js库&#xff0c;可以通过videojs结合videojs-contrib-hls实播放m3u8格式视频。流媒体传输协议(hls)定义了用来控制播放的m3u8文件 m3u8是一个文本文件(播放列表文件)&#xff0c;里面的内容就是被播放的音视频文件路…

vue3 - 组件注册和组件通信(setup语法糖)

这里介绍的是vue3中组件的注册和组件通信父传子&#xff0c;子传父。 前提&#xff1a;用的是vue3版本且使用了setup语法糖 <script setup> .....<script> 1&#xff0c;组件注册 1.1&#xff0c;全局注册&#xff1a; 全局注册需要在 在main.js中进行注册&#x…

SpringBoot整合调用微信模板方法实现微信公众号消息通知推送,Java实现微信公众号给关注用户推送自定义消息通知(手把手从0到1)

目录 概述 公众号给关注用户推送自定义消息 一、申请公众号模板消息 二、获取安装“web开发者工具” 三、微信网页授权说明 四、微信网页授权 - 流程时序图 五、HTTPClient 实现微信公众号消息推送与发布&#xff08;四步走&#xff09; 六、通过weixin-java-mp SDK实现…

flex布局(弹性盒子一)

目录 一、弹性盒子的开启 二、弹性盒子的不同样式 1.flex-direction&#xff1a;子项目的排列方向 2.flex-wrap&#xff1a;子项目多行 3. flex-flow 是flex-direction和flex-wrap的一起指定&#xff08;简写&#xff09; 一、弹性盒子的开启 设置内容区的样式&#xff1a…

Vue组件库实现按需引入可以这么做

本文为Varlet组件库源码主题阅读系列第七篇&#xff0c;读完本篇&#xff0c;可以了解到如何通过unplugin-vue-components插件来为你的组件库实现按需引入。 手动引入 前面的文章中我们介绍过Varlet组件库的打包流程&#xff0c;最后会打包成几种格式&#xff0c;其中module和…

JavaScript对象

文章目录前言一、对象1.1什么是对象1.2为什么需要对象二、创建对象的三种方式1.利用字面量创建对象2.对象的调用2.1变量、属性、函数、方法总结3.利用new Object创建对象3.1利用构造函数创建对象4.new关键字总结前言 一、对象 1.1什么是对象 现实生活中&#xff1a;万物皆对象…

vue-在组件中使用v-model

一、使用场景 子组件想要使用父组件的值,又想去改父组件的值 二、V-Model的本质 1.给子组件的 value 传个变量 2.监听子组件的input事件,并且把传过来的值赋给父组件的变量 三、关键步骤 1. props 的使用 在自定义的 vue 文件中&#xff0c;声明父组件要向子组件传递的 pr…

左右等高布局

开篇概述 作为这个专栏的开篇&#xff0c;简单介绍一下开这个专栏的初衷。之前在团队中做代码 review 时&#xff0c;经常会发现一些不太“健壮”的 css 代码。这些不太“健壮”的 css 代码&#xff0c;当遇到一些特殊情况时&#xff0c;界面显示就有可能出现问题。其中&#…

uniapp/vue虚拟列表,数据列表渲染优化

引言 相信大家经常会遇到展示一堆数据的需求&#xff0c;几十条数据还好&#xff0c;要是几百上千条&#xff0c;甚至带上了图片。那就会卡得不行。这时候就需要按需加载。 按需加载有懒加载和虚拟列表。 懒加载&#xff1a;通过JS滚动或触底触发事件来加载更多的数据&#…