当前位置: 首页 > news >正文

Java Go SDK 管理工具与最佳实践

流行的版本管理工具

类别工具名称GitHub链接Star数
Java SDKJabbahttps://github.com/shyiko/jabba3.2k
Jenvhttps://github.com/jenv/jenv6.2k
SDKManhttps://github.com/sdkman/sdkman-cli6.4k
Go SDKGVMhttps://github.com/moovweb/gvm10.9k
voidint/ghttps://github.com/voidint/g2.2k
Goenvhttps://github.com/go-nv/goenv2.3k

Java SDK 管理工具实践

开始之前先看下自己本地的 JDK 版本:

# yuluo @ 💯 Everything wins. in ~ [17:26:49]
$ java -version
openjdk version "23.0.2" 2025-01-21
OpenJDK Runtime Environment Homebrew (build 23.0.2)
OpenJDK 64-Bit Server VM Homebrew (build 23.0.2, mixed mode, sharing)# 卸载 通过 brew install 的 java 和 mvn
brew uninstall --ignore-dependencies java
brew uninstall mvn# 如果不想卸载,需要建立软链接让 sdkman 可以识别到已经安装的 java
# 参考 https://blog.csdn.net/gp_911014/article/details/138579268

这里选择使用 star 数最高的 sdkman。

SDKMan

安装
# 终端中执行
curl -s "https://get.sdkman.io" | bash# 输出如下:
All done!You are subscribed to the STABLE channel.Please open a new terminal, or run the following in the existing one:source "/Users/yuluo/.sdkman/bin/sdkman-init.sh"Then issue the following command:sdk helpEnjoy!!!# 新开一个终端执行:
source "$HOME/.sdkman/bin/sdkman-init.sh"# 检查
$ sdk versionSDKMAN!
script: 5.19.0
native: 0.7.4 (macos aarch64)
使用
Java SDK
# 查看帮助
sdk help
sdk help install# 查看当前的 java sdk
sdk current# 列出可安装的 java sdk
sdk list javaOracle        |     | 24.0.1       | oracle  |            | 24.0.1-oracle|     | 24           | oracle  |            | 24-oracle|     | 23.0.2       | oracle  |            | 23.0.2-oracle|     | 22.0.2       | oracle  |            | 22.0.2-oracle|     | 21.0.7       | oracle  |            | 21.0.7-oracle|     | 21.0.6       | oracle  |            | 21.0.6-oracle# 安装一个 java sdk 选择 oracle jdk
# 分别安装 17 和 24 版本
sdk install java 24-oracle
sdk install java 17.0.12-oracle# 使用 java 17
sdk use java 17.0.12-oracleUsing java version 17.0.12-oracle in this shell# 查看当前的 java sdk
sdk current# 切换至 24 版本
sdk use java 24-oracle# 卸载
sdk uninstall java 17.0.12-oracle
Maven

sdkman 还能管理 maven 和 gradle,scala,groovy 等。

# 列出可用的 maven
sdk list maven# 安装
sdk install maven# 查看
mvn -v

如果安装的 sdk 命令没有出现时,执行

source "$HOME/.sdkman/bin/sdkman-init.sh"

即可。

Gradle

gradle 和 maven 同理。

Go SDK 管理工具实践

选择使用 star 数最多的 GVM

安装

zsh < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/13b10b604255360a9a559c2ea23ba42e75cb536e/binscripts/gvm-installer)source ~/.gvm/scripts/gvm

参数设置

# GVM 的安装包获取地址
export GVM_GO_GET='https://golang.google.cn/dl/'# Go proxy https://goproxy.cn/
export GO111MODULE=on
export GOPROXY=https://goproxy.cn

命令使用

如遇到下载慢等,可以参考:https://blog.csdn.net/Narutolxy/article/details/143017169

# 直接在终端中输入 gvm 可以看到提供的命令
gvm# 安装 SDK 拉取源码包编译安装
gvm install go1.24.2# 直接下载二进制安装
gvm install go1.24.2 --binary# 显示版本
$ gvm listgvm gos (installed)go1.24.2
=> go1.24.4system# 切换临时版本
gvm use go1.22.11# 设置某个版本为默认 SDK
gvm use go1.22.11 --default# 验证
go version
http://www.dtcms.com/a/267683.html

相关文章:

  • 【汇编逆向系列】九、函数传参之结构体 - SHL、SHR指令,小型结构体参数和返回值
  • 《深度剖析:5G网络切片如何精准保障不同业务QoS需求》
  • PHP语法基础篇(九):正则表达式
  • 本机上搭一个HTTPS网站用什么工具?.NET self host支持吗?
  • Redis--黑马点评--达人探店功能实现详解
  • C++ 11中lock_guard和unique_lock的区别
  • 初识Linux:Linux开发工具gcc/g++和gdb以及Makefile的使用
  • Python小工具之PDF合并
  • Redux 扩展与标准化模板方案
  • LINUX75 LAMP
  • 字节一面整理
  • C++ 模板参数匹配、特化
  • 智能监控算法助力工厂高温高效管理
  • 淘系怎么做?
  • hiredis window之RFDMap
  • 基于大模型的肾积水全周期预测与诊疗方案研究报告
  • 如何使用backtrace定位Linux程序的崩溃位置
  • 【STM32】定时器中断 + 含常用寄存器和库函数配置(提供完整实例代码)
  • 洛谷 P11967 [GESP202503 八级] 割裂-普及+/提高
  • 百度文心 4.5 大模型详解:ERNIE 4.5 Technical Report
  • 水下航行器外形之变体式与回转体的区别
  • 线程锁和线程同步
  • 从“电话催维修“到“手机看进度“——售后服务系统开发如何重构客户体验
  • Linux网络配置与故障排除完全指南
  • 12 nacos配置中心
  • 使用Kahn算法处理节点依赖关系
  • ABB焊接机器人智能节气仪
  • 汽车制造车间检测机器人与PLC无线以太网实时控制方案
  • 数据库学习笔记(十七)--触发器的使用
  • Java SE--数组