nodejs不同版本的差异还是蛮多的,比如obj?.a 在nodejs12是不支持的,必须得升级到14才可以。但是centos yum 默认安装的,或者系统集成的nodejs版本都是很老的。项目上传到生产环境无法跑。所以,第一个是在项目中,锁定nodejs版本,比如:

{
  "name": "bk-vision",
  "version": "0.2.7",
  "private": true,
  "description": "bk-vision",
  "keywords": [
    "bk-vision",
    "可视化平台"
  ],
  "engines": {
    "node": "^v16.15.0",
    "npm": "^8.5.5"
  },
  "main": "dist/main.js",
}

本地nodejs版本管理,请参考:《nvm使用详解——命令解析大全》、《npm包管理问题:安装nvm后如何管理各个版本间包

本篇主要讲linux 服务器上 升级方法,nodejs版本、

看了官网的文档:https://www.linode.com/docs/guides/how-to-update-nodejs/  本篇做最详细的补充

通过npm升级npm和node升级的正确方式

npm升级npm

npm install npm@latest -g

检查 npm 的当前版本,使用命令:npm -v

清除npm cache

npm cache clean -f

npm升级nodejs

安装 n 模块

npm install -g n

安装最新的稳定版本

n stable

你也可以定制一个自己喜欢的版本:n 16.5.0

n – Interactively Manage Your Node.js Versions

https://www.npmjs.com/package/n

因为n比nvm简单,所以在linux上直接npm 来升级nodejs,我选择n

通过brew 更新 Node.js version on macOS

brew update
brew upgrade node

yum安装新版nodejs

yum clean all
rm -fv /etc/yum.repos.d/nodesource*
curl --silent --location https://rpm.nodesource.com/setup_16.x | sudo bash
sudo yum -y install nodejs

curl bash 做了什么?

curl表示获取地址对应的内容,而https://rpm.nodesource.com/setup_14.x就是一段shell脚步:

#!/bin/bash
SCRSUFFIX="_14.x"
NODENAME="Node.js 14.x"
NODEREPO="pub_14.x"
NODEPKG="nodejs" print_status() {
  local outp=$(echo "$1") # | sed -r 's/\n/\n## /mg')
  echo
  echo -e "## ${outp}"
  echo
}
##省略

而|是管道符,表示通过bash执行上述shell脚步内容,脚步对yum的node源地址做了一些修改和设置

curl哪个nodejs版本?

具体查看:https://github.com/nodesource/distributions,查找 Installation instructions,

Node.js v14.x:

# Using Ubuntu
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
# Using Debian, as root
curl -fsSL https://deb.nodesource.com/setup_14.x | bash -
apt-get install -y nodejs

Node.js LTS (v16.x):

# Using Ubuntu
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
# Using Debian, as root
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash -
apt-get install -y nodejs

转载本站文章《nodejs升级到最新LTS版本方法汇总:linux/mac/window—npm/yum/ssh》,
请注明出处:https://www.zhoulujun.cn/html/webfront/ECMAScript/nodejs/8825.html

nodejs升级到最新LTS版本方法汇总:linux/mac/window—npm/yum/ssh的更多相关文章

  1. centos7 docker升级到最新稳定版本

    原文:centos7 docker升级到最新稳定版本 一.前言 docker的版本分为社区版docker-ce和企业版dokcer-ee社,区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外 ...

  2. 【web】Ubuntu上安装nodejs 4.x 5.x版本方法

    在Linux(ubuntu server)上面安装NodeJS的正确姿势 上一篇文章,我介绍了 在Windows中安装NodeJS的正确姿势,这一篇,我们继续来看一下在Linux上面安装和配置Node ...

  3. nodejs+express4.0+mongodb安装方法 for Linux, Mac

    废话不多说 1:下载nodejs包 下载地址例如以下:http://www.nodejs.org/download/ 下载source code版本号须要解压后到其文件夹运行./configure,然 ...

  4. CentOS6下用yum升级系统最新内核版本

    首先当你决定升级内核时,要想清楚为什么升级内核,因为升级内核会带来很多麻烦.所以这种事情能避免就避免 导入 Public Key rpm --import https://www.elrepo.org ...

  5. nodejs的express框架(request,response方法汇总)

    Response 对象 - response 对象表示 HTTP 响应,即在接收到请求时向客户端发送的 HTTP 响应数据.常见属性有: res.app:同req.app一样 res.append() ...

  6. 在ubuntu上安装最新稳定版本的node及npm

    背景 通过ubuntu官方apt安装工具安装的node是最新LTS版本的,而本人是个有点强迫症的人,喜欢追求新的东西,也就是想方设法想要去安装最新版本的node,所以本文也就产生了,附上ubuntu安 ...

  7. Windows 下Npm和NodeJS升级

    前提电脑中已经安装过NodeJS, npm.现在需要进行升级操作. 1.查看当前的npm和NodeJs的版本: C:\Users\Administrator>node -vv4.4.3 C:\U ...

  8. 升级openssh到高版本

    linux升级openssh到高版本 可以解决OpenSSH 安全漏洞(CVE-2018-15919)和SSH服务器类型和版本 如果是新服务器,需要安装对应命令vim 上传下载等命令 安装上传或者下载 ...

  9. Linux(Fedora)下NodeJs升级最新版本(制定版本)

    Linux(Fedora)下NodeJs升级最新版本(制定版本) 首先安装n模块: npm install -g n 升级node.js到最新稳定版 n stable 升级node.js到制定版本 n ...

  10. nodejs升级的两种方法

    方法一: 用n升级nodejs # 全局安装n$ npm install -g n# 升级到最新稳定版$ n stable # 升级到最新版$ n latest# 升级到定制版$ n v7.10.0# ...

随机推荐

  1. 前后端分离,前端发送过来的请求是服务器的ip还是用户的ip

    前后端分离部署时,服务器A用于部署前端项目,称为前端服务器,服务器B用于部署后端项目,称为后端服务器.后端服务器通过开放API的方式,向前端服务器中的前端项目提供数据或数据操作接口,以此实现前端与后端 ...

  2. OpenWrt主题在菜单中不显示

    问题: 路径中有对应的主题,但是make menuconfig中不显示 原因: 需要建立软连接 1. 在路径 SDK-DR232-20221220/package/feeds/luci 中运行 ls ...

  3. c#中建造者设计模式详解

    基础介绍:   将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示.   说白了就是将一个复杂的对象拆分成一个一个零件,然后按照既定顺序和规则进行组装,最终形成这个相对复杂的对象 ...

  4. Windows系统下,GoLand的Terminal选定Git Bash作为终端,使用其上传代码时,出现中文乱码的问题

    问题描述 按照这位博主博客写的没有完全解决乱码问题博主博客 这个博主博客是我后来发现,暂时还没去验证是否可行博主博客 解决方案 notepad++直接Free Download,然后就一直下一步就无脑 ...

  5. Java技术_基础技术(0003)_类执行顺序详解+实例(阿里面试题)+详细讲解+流程图

    类加载机制 加载.验证.准备.初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序按部就班地开始,而解析阶段则不一定:它在某些情况下可以在初始化阶段之后再开始,这是为了支持Java语言的 ...

  6. 线上SQL超时场景分析-MySQL超时之间隙锁

    前言 之前遇到过一个由MySQL间隙锁引发线上sql执行超时的场景,记录一下. 背景说明 分布式事务消息表:业务上使用消息表的方式,依赖本地事务,实现了一套分布式事务方案 消息表名:mq_messag ...

  7. 大数据开发要学什么java还是python?

    在大数据开发领域,Java和Python都是备受青睐的编程语言.它们分别具有各自独特的特点和优势,在大数据处理方面也有不同的应用场景. 以下是对Java和Python在大数据开发中的应用.优势以及学习 ...

  8. WPF 绑定binding都有哪些事件

    在WPF中,源属性(Source Property)指的是提供数据的属性,通常是数据模型或者其他控件的属性,而目标属性(Target Property)则是数据绑定的目标,通常是绑定到控件的属性,例如 ...

  9. smm整合

    配置整合 这个里面SpringConfig 就是书写Spring的配置类,其中加载了jdbc配置类和mybatis配置类,还加载了jdbc资源类. package com.itheima.config ...

  10. 24、Go语言中的OOP思想

    1.是什么? OOP:面向对象 Go语言的解构体嵌套 1.模拟集成性:is - a type A struct { field } type B struct { A // 匿名字段 } 这种方式就会 ...