「sdkman」「nvm」Linux:基于sdkman安装多版本Java;安装maven;基于nvm安装多版本nodejs;安装yarn

news2024/11/25 2:31:26

1. 基于sdkman 安装多版本Java

Linux环境下管理多版本java可以使用sdkman,官网: https://sdkman.io/

需要注意sdkman 依赖 zipunzip 命令,记得提前下载再下载sdkman

安装命令按官网走也很简单:

curl -s “https://get.sdkman.io” | bash
source “$HOME/.sdkman/bin/sdkman-init.sh”

执行 sdk version 有打印信息说明安装成功!!

SDKMAN!
script: 5.18.2
native: 0.4.6

  • curl命令可能有网络问题timeout 导致下载失败,网络代理问题请自行解决
  • sdkman默认安装路径在 ~/.sdkman ,下载失败后再次下载我记得会报错sdkman已安装,请 rm -rf ~/.sdkman 删除目录后再次下载

输入命令 查看sdkman可下载的java(进入类似vi 的环境,:q退出)

sdk list java

我提前安装了
在这里插入图片描述安装指定版本java ,后面的是 Identifier 列值

sdk install java 17.0.9-jbr

sdk install java 8.0.392-tem

在这里插入图片描述下载完会提示是否将当前下载版本设为默认,按需选择,我为 n了

查看版本 : sdk current
切换版本: sdk use java 8.0.392-tem
切换java版本效果如图:
在这里插入图片描述

其他命令请参考官方doc : https://sdkman.io/usage#use

2. 安装maven

maven 官网 下载分发:https://maven.apache.org/download.cgi
.9+ requires JDK 8
下载maven ,maven依赖java,Maven 3.9+ requires JDK 8 or above to execute. 这里下载的 3.9.6

curl -O https://dlcdn.apache.org/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz

解压:

tar -xzvf apache-maven-3.9.6-bin.tar.gz

配置环境变量:
我这边直接配置在全局 /etc/profile 里了,如过有洁癖就按需写在 ~/.bashrc 或 ~/.bash_profile 或 ~/.zshrc ,Maven并不强制要求将其路径添加到/etc/profile中

3.基于nvm安装多版本nodejs

Linux nvm 的repo:https://github.com/nvm-sh/nvm ,下文安装过程命令来源于该repo

安装nvm的命令类似sdkman

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

之后配置环境: vi ~/.bashrc ,在文末追加下列

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

最后编译生效

source ~/.bashrc

验证

nvm -v

nvm安装后,安装多版本nodejs

#查询目前线上所能安装的所有nodejs版本
nvm ls-remote 

#安装相应版本nodejs
nvm install 14.19.3

#使用相应版本的nodejs
nvm use 14.19.3

#列出已经安装的版本
nvm ls

#卸载相应的nodejs
nvm uninstall 14.19.3

#查看当前版本
nvm current

npm 国内最好配下淘宝镜像加速下载,需要注意淘宝镜像url 21年变更过别设置旧的!
域名切换规则:

https://npm.taobao.org => https://npmmirror.com
https://registry.npm.taobao.org => https://registry.npmmirror.com

全局配置命令

 // 查询源
    npm config get registry

    // 更换国内源
    npm config set registry https://registry.npmmirror.com

    // 恢复官方源
    npm config set registry https://registry.npmjs.org

    // 删除注册表
    npm config delete registry

4.安装yarn

安装 yarn ,一种方式是npm安装yarn

npm install -g yarn

我的arch系统直接pacman安装的

pacman -S yarn

yarn也最好配下国内镜像(下面命令是全局配置)

 // 查询源
    yarn config get registry

    // 更换国内源
    yarn config set registry https://registry.npmmirror.com

    // 恢复官方源
    yarn config set registry https://registry.yarnpkg.com

    // 删除注册表
    yarn config delete registry

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

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

相关文章

软件测试|使用matplotlib绘制箱型图

简介 绘制箱型图(Box Plot)是一种常用于可视化数据分布的方法,它可以显示数据的中位数、四分位数、异常值等统计信息。Matplotlib 是一个强大的 Python 数据可视化库,可以轻松绘制箱型图。在本文中,我们将介绍如何使用…

抗炎药行业分析:整体规模早已超过100亿元

抗炎药是指直接对身体内的炎症起治疗作用的药物。它具有解热、镇痛、抗炎、抗风湿的作用,如阿司匹林、布洛芬等,就属于这类药。由于炎症是人体的一种防御机能反应,会有局部渗出、水肿、毛细血管扩张等表现,而抗炎药的效应就是能改…

ONLYOFFICE:开源、免费、安全,打造定制化办公平台的最佳选择

文章目录 写在前面ONLYOFFICE是什么?ONLYOFFICE的惊艳之处齐全的插件,助你锦上添花部署一款自己的安全可靠的办公平台写在最后 写在前面 说起 Office 办公软件,我想大家最常用的应该就是微软的 Microsoft Office 以及国产的 WPS Office。两款…

大数据 - Kafka系列《一》- Kafka基本概念

目录 🐶1.1 什么是kafka 🐶1.2 Kafka可以用来做什么 🐶1.3 kafka的特点 🥙1. 高吞吐量、低延迟 🥙2. 可扩展性 🥙3. 持久性、可靠性 🥙4. 容错性 🥙5. 高并发 &#x1f436…

国产阿里的Copilot能提效30%吗?

国产阿里的Copilot能提效30%吗? Copilot简介 GitHub 和 OpenAI 共同打造的一款编程神器–Copilot, 这是一款立足于人工智能技术的编程助手。在此基础上,借助于 GitHub 庞大的代码库和来自全球的开源社区帮助,搭配 OpenAI 在自然…

日志项目1

文章目录 【C - 基于多设计模式下的同步&异步日志系统】项目介绍 前置技术1. 项目介绍2. 开发环境3. 核心技术4. 环境搭建5. 日志系统介绍5.1 为什么需要日志系统5.2 日志系统技术实现5.2.1 同步写日志5.2.2 异步写日志 6. 前置技术补充6.1 不定参函数6.1.1 不定参宏函数6…

7.6 MySQL基本函数的使用(❤❤❤)

7.6 MySQL基本函数的使用 1. 提要2. 数字函数3. 字符函数3.1 替换字符3.2 左填充字符及截取字符串 4. 日期函数4.1 日期函数4.2 表达式占位符4.3 日期偏移计算4.4 日期间隔 5. 条件函数5.1 IF语句5.2 case...when语句 1. 提要 2. 数字函数 3. 字符函数 3.1 替换字符 -- INSERT…

FPGA引脚选择(Select IO)--认知1

主要考虑功能角度(速度,电平匹配,内部程序编写)去找研究芯片内部资源 1. 关键字 HP I/O Banks, High performance The HP I/O banks are deisgned to meet the performance requirements of high-speed memory and other chip-to-…

软件测试|使用Python轻松裁剪视频

简介 裁剪视频是在视频编辑和处理中常见的任务之一,Python提供了多种库和工具,可以用来裁剪视频。在本文中,我们将详细讨论如何使用Python来裁剪视频,并提供示例代码。 步骤1:环境准备 首先,我们要安装必…

如何使用CureIAM自动清理GCP基础设施中的IAM账号权限

关于CureIAM CureIAM是一款针对GCP基础设施的账号权限安全检查与管理工具,该工具易于使用,是一个功能强大且易于使用的可靠高性能引擎。在该工具的帮助下,广大研究人员能够以自动化的形式在GCP云基础设施上实践最低权限原则。 CureIAM可以允…

如何在Linux运行RStudio Server并实现Web浏览器远程访问

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​💫个人格言:“没有罗马,那就自己创造罗马~” 文章目录 前言1. 安装RStudio Server2. 本地访问3. Linux 安装cpolar4. 配置RStudio server公网访问地址5. …

自建服务器如何备案?

随着互联网的普及和发展,越来越多的人开始考虑自建服务器。然而,在中国大陆地区,自建服务器需要进行备案。本文将介绍自建服务器备案的流程、所需材料以及注意事项。 一、备案流程 确定备案地区 根据《中华人民共和国计算机信息网络国际联网…

khbc靶场小记(upload 666靶场)

尝试上传正常的png jpg gif php的格式的文件发现老是提示烦人的消息(上传不成功); 通过抓包对MIME进行爆破没爆出来,当时可能用成小字典了; 猜测可能是把后缀名和MIME绑定检测了; 反正也没思路,…

归并排序(C语言)

目录 1.归并排序图解 2.归并排序(递归版) 3.归并排序(非递归版) 1.归并排序图解 归并排序的核心思想是让左右两边有序的部分进行合并比较排序,具体什么意思呢?分两点: 1.分:左右两边…

SwitchyOmega插件管理海外動態IP代理設置教程

SwitchyOmega插件很好解決了管理多個代理並在它們之間切換的問題,通過本文來全面瞭解SwitchyOmega,比如SwitchyOmega插件的用途、它的主要功能和應用、怎麼下載和使用,如何管理海外動態IP代理。 SwitchyOmega插件有什麼用途? Swit…

扫描电子显微镜在材料失效分析中的主要作用

扫描电子显微镜(Scanning Electron Microscope,简称SEM)是一种高分辨率的显微镜,能够在纳米级别上观察样品的表面形貌和微观结构。在材料失效分析中,SEM起着至关重要的作用,为深入理解材料的性质和失效机制…

excel统计分析——Scheffe法多重比较

参考资料:生物统计学 Scheffe法(雪费法)多重比较和LSD法一致,但通过k-1作为F分布的第一自由度对临界值进行调整: 其中,k为处理水平数,df为误差自由度;为 excel操作步骤如下&#xf…

ADSelfService Plus 推出离线多因素身份验证以提升远程工作安全性

采用先进验证方法,确保在任何时间、地点或连接问题下对业务数据的合法访问即使远程用户未连接到身份验证服务器或互联网,也可通过MFA安全认证。 MFA 得克萨斯州德尔瓦雷 — 2023年5月3日 — Zoho Corporation 旗下的企业IT管理部门ManageEngine今日宣布…

rust让你的python飞起来!

Note: 本文作为入门教程,抛砖引玉,帮你初步了解如何使用rust为python写扩展模块,涉及从头到尾的详细步骤,基于此,剩下的只有深入rust,才能做得更好。 众所周知,python性能比较差,尤其…

自动驾驶轨迹规划之碰撞检测(三)

欢迎大家关注我的B站: 偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com) 目录 1.基于圆覆盖 2.BVH 3.MATLAB自动驾驶工具箱 4 ROS内置的模型 自动驾驶轨迹规划之碰撞检测(一)-CSDN博客 自动驾…