当前位置 :首页 >> 明星

如何使用SDKMAN负责管理您的JDK

2023-02-28   来源 : 明星

va。似乎我用作的是 AdoptOpenJDK 11.0.3原版,这个比我预想的要老。

拷贝

Shell

$ java ;还有version

openjdk 11.0.3 2019-04-16

OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.3+7)

OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.3+7, mixed mode)

从 SDKMAN选取由Adoptium 提供的取名为Eclipse Temurin 的AdoptOpenJDK,装设不断更新的 JDK 17 LTS 原版。

拷贝

Shell

$ sdk install java 17.0.2-tem

Downloading: java 17.0.2-tem

In progress...

Repackaging Java 17.0.2-tem...

Done repackaging...

Installing: java 17.0.2-tem

Done installing!

Setting java 17.0.2-tem as default.

最终检验下选项的 Java 的原版号,它并未更动为你没多久装设的原版。

拷贝

Shell

$ java ;还有version

openjdk 17.0.2 2022-01-18

OpenJDK Runtime Environment Temurin-17.0.2+8 (build 17.0.2+8)

OpenJDK 64-Bit Server VM Temurin-17.0.2+8 (build 17.0.2+8, mixed mode, sharing)

当然也可以通过比如说的作法装设 JDK 11 LTS 原版。最后原因来了,你有否借此这个 JDK 成选项原版?当然不是了,JDK 17才是不断更新 LTS 原版,理应作为选项原版。

拷贝

Shell

$ sdk install java 11.0.14-tem

Downloading: java 11.0.14-tem

In progress...

Repackaging Java 11.0.14-tem...

Done repackaging...

Installing: java 11.0.14-tem

Done installing!

Do you want java 11.0.14-tem to be set as default? (Y/n): n

5.选项JDK

如果您变动当初,无论如何借此用作JDK 11作为选项原版,那么您可以用作default军令来借助于这一点。

拷贝

Shell

$ sdk default java 11.0.14-tem

Default java version set to 11.0.14-tem

对此检验一下:

拷贝

Shell

$ java ;还有version

openjdk 11.0.14 2022-01-18

OpenJDK Runtime Environment Temurin-11.0.14+9 (build 11.0.14+9)

OpenJDK 64-Bit Server VM Temurin-11.0.14+9 (build 11.0.14+9, mixed mode)

然后把它重新设为为 JDK 17。

拷贝

Shell

$ sdk default java 17.0.2-tem

Default java version set to 17.0.2-tem

当然也可以均通过在适配器回话在此之后用作 use 军令来更动选项的 JDK。

拷贝

Shell

$ sdk use java 11.0.14-tem

Using java version 11.0.14-tem in this shell.

在这个军令售票处在此之后,看着这两项用作的JDK原版是JDK11。

拷贝

Shell

$ java ;还有version

openjdk 11.0.14 2022-01-18

OpenJDK Runtime Environment Temurin-11.0.14+9 (build 11.0.14+9)

OpenJDK 64-Bit Server VM Temurin-11.0.14+9 (build 11.0.14+9, mixed mode)

打开另一个适配器售票处,见到JDK原版无论如何是 JDK 17。需注意的是, JAVA_HOME 环境变量也是看成正确的 Java 原版。

拷贝

Shell

$ echo $JAVA_HOME

/home//.sdkman/candidates/java/current

6.清除其他的JDK

这两项的JDK并未是通过 SDKMAN 装设的,是时候清除该系统在此之后的其他JDK了。

拷贝

Shell

$ dpkg ;还有list | grep jdk

ii openjdk-11-jre-headless:amd64 11.0.13+8-0ubuntu1~20.04

改除openjdk-11-jre-headless:amd64

拷贝

Shell

$ sudo apt remove openjdk-11-jre-headless:amd64

最终通过 update-alternatives军令开展检验,我们注意到无论如何存在一个需用的Java 11的原版。

拷贝

Shell

$ update-alternatives ;还有list java

/usr/lib/jvm/jdk-11.0.3+7/bin/java

通过update-alternatives军令开展改除。

拷贝

Shell

$ sudo update-alternatives ;还有remove "java" /usr/lib/jvm/jdk-11.0.3+7/bin/java

update-alternatives: removing manually selected alternative - switching java to auto mode

通过update-alternatives军令开展检验,它并未改除了。

拷贝

Shell

$ update-alternatives ;还有list java

update-alternatives: error: no alternatives for java

但是,它并没有从文件该系统在此之后删除,需遥测到/usr/lib/jvm 录入,然后删除 JDK的录入。

拷贝

Shell

$ sudo rm -rf jdk-11.0.3+7/

残存要做的就是改除 IntelliJ 装设的 JDK。它们位于home录入下的.jdks在此之后。遥测到你的Home录入并改除.jdks录入。

拷贝

Shell

$ rm -rf .jdks/

7.设为IntelliJ的JDK

打开 IntelliJ 遥测到File – Project Structure,这也是配置 JDK 的位置。有点奇怪的是,它位于Project Structure下面,而不是有时候的Settings录入下。通过点击 + 符号,你可以添加 SDKMAN JDK。

你还需为自己的扩建工程选取JDK。

构建你的扩建工程,在笔记在此之后,你则会注意到正在用作 SDKMAN JDK。

8.结论

SDKMAN 是一个可以用来管控多种不同原版且用作简单的基本功能,很有必要性成你整合基本功能包的一部分。它降低了我该系统的混乱总体,让我可以很容易地管控该系统里面的多种不同原版。此外,还可以用作upgrade军令来检查有否有新的原版。

译文引介

胥磊,51CTO社区编辑,某腹部电商关键技术财务总监,关注Java后端整合,关键技术负责管理,核心可用性,分布式整合等科技领域。

译文标题:How to Manage Your JDKs With SDKMAN,创作者:Gunter Rotsaert

江苏男科医院哪家医院好
脚扭伤吃什么药好
眼睛干涩用什么眼药水比较好
吉林牛皮癣治疗费用
膝关节僵硬了怎么治疗
东阳椒江区一宗地块将于4月25日网拍 起始价4.2亿元

见解网讯:3月底26日,东山街道自然资源和规划局发布售与公告,将于4月底25日以网上拍卖方式售与东山街道中心大道以南、香港上海汇丰银行路以南南段。见解网络媒体从售与公共告知,该南段...

友情链接