之前出过一篇关于Windows环境下的多JDK和VSCode的配置,这篇文章来写一下Linux环境下的配置
文章Linux:Kali 2022.3
首先需要下载JDK和JRE,在Linux上高版本的JDK和JRE是分开的,JDK8不是,但是JDK11和JDK17是。
下载方式有两种,最终都是为了获得完整的运行库文件:一种是从java的官方网站下载,另一种是从apt的软件库下载然后再移动文件。我更青睐第二种,因为不用登录而且在国内源的加持下很快。
在Terminal中,搜索并安装JRE11和JRE17(直接安装就行了),在Kali的软件库中没有JRE8:
之后访问OpenJDK的官方网站:
链接
在这里分别下载JDK11,JDK17和JDK8的安装包,其中JDK11和JDK8的需要先登录
之后分别使用dkpg -i
的命令安装JDK11和JDK17。
安装完成后就可以到/usr/lib
的目录下找到一个jvm文件夹,其中包括jdk11,jdk17,jre11,jre17。之后直接把JDK8解压到里面,最后可以得到这样的结果:
下载安装就完成了。最后建议把整个jvm文件夹剪切到/opt文件夹下
如果是从java官方网站下载zip格式的,最后解压的结果也应该是这样的文件夹,文件夹中包含有同样的运行库,只是获取方式不同。
使用vim /etc/profile
或者mousepad /etc/profile
打开编辑器,在最下两行添加JAVA_HOME和PATH参数。jdk11和jdk17都不用配置环境变量,只有jdk8需要。
#JAVA ENVIRONMENT
#JAVA_HOME1.8=/opt/jvm/jdk-1.8
#JAVA_HOME1.11=/opt/jvm/jdk-11
#JAVA_HOME1.17=/opt/jvm/jdk-17
#export JRE_HOME=$JAVA_HOME/jre
export JAVA_HOME=/opt/jvm/jdk-1.8
export PATH=$JAVA_HOME/bin:$PATH
#export JAVA_HOME PATH
写错的话会导致重启后登陆不了,解决办法是使用Ctrl Alt F1
(也可能是F23456)打开bash,使用用户名和密码登录后用vim把写错的删掉。
之后更新一下source /etc/profile
Kali有一套很好用的多版本JDK工具,叫update-alternatives,我们可以通过它进行快速切换JDK。
首先需要注册三个版本的JDK:
update-alternatives --install /usr/bin/java java /opt/jvm/jdk-1.8/bin/java 100 ##最后面的数字大小表示优先级
update-alternatives --install /usr/bin/java java /opt/jvm/jdk-11/bin/java 200 ##倒数第二个参数是JDK目录
update-alternatives --install /usr/bin/java java /opt/jvm/jdk-17/bin/java 300 ##其它的不用动
update-alternatives --install /usr/bin/javac javac /opt/jvm/jdk-1.8/bin/javac 100
update-alternatives --install /usr/bin/javac javac /opt/jvm/jdk-11/bin/javac 200
update-alternatives --install /usr/bin/javac javac /opt/jvm/jdk-17/bin/javac 300
之后就可以使用update-alternatives --config javac
和update-alternatives --config java
快速切换JAVA和JAVAC
同时切换java和javac编号之后就可以实现JDk切换了。
安装完各种JAVA依赖包之后会要求配置JAVA,不用管,直接Ctrl Shift P打开用户设置,刚进去应该是空的,输入下面的配置
{
"java.home": "/opt/jvm/jdk-11",//JAVAHOME必须是1.11以上的
"java.configuration.runtimes": [
{
"name": "JavaSE-1.8",
"path": "/opt/jvm/jdk-1.8",
"default": true //这个default取决于你的项目使用哪个,项目用哪个哪个设为默认
},
{
"name": "JavaSE-11",
"path": "/opt/jvm/jdk-11"
},
{
"name": "JavaSE-17",
"path": "/opt/jvm/jdk-17"
}
],
"explorer.confirmDelete": false
}
重启一下VSCode,就可以开始正常使用了。
下面欣赏一下完全配置体
Original url: Access
Created at: 2023-07-27 17:19:36
Category: default
Tags: none
未标明原创文章均为采集,版权归作者所有,转载无需和我联系,请注明原出处,南摩阿彌陀佛,知识,不只知道,要得到
java windows火焰图_mob64ca12ec8020的技术博客_51CTO博客 - 在windows下不可行,不知道作者是怎样搞的 监听SpringBoot 服务启动成功事件并打印信息_监听springboot启动完毕-CSDN博客 SpringBoot中就绪探针和存活探针_management.endpoint.health.probes.enabled-CSDN博客 u2u转换板 - 嘉立创EDA开源硬件平台 Spring Boot 项目的轻量级 HTTP 客户端 retrofit 框架,快来试试它!_Java精选-CSDN博客 手把手教你打造一套最牛的知识笔记管理系统! - 知乎 - 想法有重合-理论可参考 安宇雨 闲鱼 机械键盘 客制化 开贴记录 文本 linux 使用find命令查找包含某字符串的文件_beijihukk的博客-CSDN博客_find 查找字符串 ---- mac 也适用 安宇雨 打字音 记录集合 B站 bilibili 自行搭建 开坑 真正的客制化 安宇雨 黑苹果开坑 查找工具包maven pom 引用地 工具网站 Dantelis 介绍的玩轴入坑攻略 --- 关于轴的一些说法 --- 非官方 ---- 心得而已 --- 长期开坑更新 [本人问题][新开坑位]关于自动化测试的工具与平台应用 机械键盘 开团 网站记录 -- 能做一个收集的程序就好了 不过现在没时间 -- 信息大多是在群里发的 - 你要让垃圾佬 都去一个地方看难度也是很大的 精神支柱 [超级前台]sprinbboot maven superdesk-app 记录 [信息有用] [环境准备] [基本完成] [sebp/elk] 给已创建的Docker容器增加新的端口映射 - qq_30599553的博客 - CSDN博客 [正在研究] Elasticsearch, Logstash, Kibana (ELK) Docker image documentation elasticsearch centos 安装记录 及 启动手记 正式服务器 39 elasticsearch 问题合集 不断更新 6.1.1 | 6.5.1 两个版本 博客程序 - 测试 - bug记录 等等问题 laravel的启动过程解析 - lpfuture - 博客园 OAuth2 Server PHP 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 利用Laravel 搭建oauth2 API接口 附 Unauthenticated 解决办法 - 煮茶的博客 - SegmentFault 思否 使用 OAuth2-Server-php 搭建 OAuth2 Server - 午时的海 - 博客园 基于PHP构建OAuth 2.0 服务端 认证平台 - Endv - 博客园 Laravel 的 Artisan 命令行工具 Laravel 的文件系统和云存储功能集成 浅谈Chromium中的设计模式--终--Observer模式 浅谈Chromium中的设计模式--二--pre/post和Delegate模式 浅谈Chromium中的设计模式--一--Chromium中模块分层和进程模型 DeepMind 4 Hacking Yourself README.md update 20211011
Laravel China 简书 知乎 博客园 CSDN博客 开源中国 Go Further Ryan是菜鸟 | LNMP技术栈笔记 云栖社区-阿里云 Netflix技术博客 Techie Delight Linkedin技术博客 Dropbox技术博客 Facebook技术博客 淘宝中间件团队 美团技术博客 360技术博客 古巷博客 - 一个专注于分享的不正常博客 软件测试知识传播 - 测试窝 有赞技术团队 阮一峰 语雀 静觅丨崔庆才的个人博客 软件测试从业者综合能力提升 - isTester IBM Java 开发 使用开放 Java 生态系统开发现代应用程序 pengdai 一个强大的博主 HTML5资源教程 | 分享HTML5开发资源和开发教程 蘑菇博客 - 专注于技术分享的博客平台 个人博客-leapMie 流星007 CSDN博客 - 舍其小伙伴 稀土掘金 Go 技术论坛 | Golang / Go 语言中国知识社区
最新评论