惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
人人都是产品经理
人人都是产品经理
Hugging Face - Blog
Hugging Face - Blog
罗磊的独立博客
博客园 - 【当耐特】
D
Docker
Y
Y Combinator Blog
L
LangChain Blog
博客园 - 三生石上(FineUI控件)
I
InfoQ
阮一峰的网络日志
阮一峰的网络日志
F
Fortinet All Blogs
J
Java Code Geeks
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
B
Blog
The GitHub Blog
The GitHub Blog
腾讯CDC
MongoDB | Blog
MongoDB | Blog
博客园 - Franky
爱范儿
爱范儿
A
About on SuperTechFans
量子位
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

博客园 - Caraxes

共享打印机的另一种方式 简易防火墙映射测试 手动部署MySQL Exporter实战 Windows屏幕字体锯齿化的调整 Windows轻量级WebDAV服务器搭建 解决一个mysql数据库连接打开慢的问题记录 Mysql 赋予用户访问单表SELECT权限 UNIX换行和DOS换行的批量转换 Centos Mysql 8.0.43安装 关闭windows 更新驱动程序的方法 CentOS7下OpenSSH10.0p2升级实践 特殊符号的输入 tomcat启动一次问题的处理。 如何禁用键盘左侧Win键 Windows设置分页文件到D盘无效的解决方法 npm中文站的映射 使用ffmpeg批量生成视频的缩略图 解决内网HTTP由NG转发HTTPS后,部分跳转还是HTTP的问题 Linux LVM方式管理磁盘 Vscode Debug乱码的问题修复 ffmpeg提取音频 GO应用WINDOWS下添加程序图标 Linux 证书文件查看参考 批量查看HTTPS的SSL证书的有效期脚本 Linux系统下安装Java环境 修改Jar包里面的配置文件
一个切换不同JAVA版本的方法
Caraxes · 2025-04-22 · via 博客园 - Caraxes

因为不同的项目有不同的JAVA版本,因此需要有需要随时切换不同JAVA版本的需求(WINDOWS)
思路是把JAVA指定到一个公用路径,通过链接指向不同的目录来进行切换。
创建一个目录C:\Program Files\Java\defaultjava 作为公用目录
机器另外安装了不同的JAVA版本,具体路径如下:
C:\Program Files\Java\jdk-1.8
C:\Program Files\Java\jdk-17.0.11
C:\Program Files\Java\jdk-24.0.1
%JAVA_HOME%设置为:
JAVA_HOME=C:\Program Files\Java\defaultjava
%Path%添加:C:\Program Files\Java\defaultjava\bin
编写脚本

切换JAVA版本.bat
@echo off
choice /c:123 /m:"Please choose default Java version:  1. JAVA8; 2.JAVA17; 3.JAVA24"
if %errorlevel%==4 goto end
if %errorlevel%==3 goto three
if %errorlevel%==2 goto two
if %errorlevel%==1 goto one
:one
echo Switch to Java 8
rmdir "C:\Program Files\Java\defaultjava\bin"
rmdir "C:\Program Files\Java\defaultjava\lib"
rmdir "C:\Program Files\Java\defaultjava\conf"

mklink /d "C:\Program Files\Java\defaultjava\bin" "C:\Program Files\Java\jdk-1.8\bin"
mklink /d "C:\Program Files\Java\defaultjava\conf" "C:\Program Files\Java\jdk-1.8\lib"
dir "C:\Program Files\Java\defaultjava"
java -version
pause>nul
goto begin
:two
echo Switch to Java 17
rmdir "C:\Program Files\Java\defaultjava\bin"
rmdir "C:\Program Files\Java\defaultjava\lib"
rmdir "C:\Program Files\Java\defaultjava\conf"

mklink /d "C:\Program Files\Java\defaultjava\bin" "C:\Program Files\Java\jdk-17.0.11\bin"
mklink /d "C:\Program Files\Java\defaultjava\lib" "C:\Program Files\Java\jdk-17.0.11\lib"
mklink /d "C:\Program Files\Java\defaultjava\conf" "C:\Program Files\Java\jdk-17.0.11\conf"
dir "C:\Program Files\Java\defaultjava"
java -version

pause>nul
goto begin
:three
echo Switch to Java 17
rmdir "C:\Program Files\Java\defaultjava\bin"
rmdir "C:\Program Files\Java\defaultjava\lib"
rmdir "C:\Program Files\Java\defaultjava\conf"

mklink /d "C:\Program Files\Java\defaultjava\bin" "C:\Program Files\Java\jdk-24.0.1\bin"
mklink /d "C:\Program Files\Java\defaultjava\lib" "C:\Program Files\Java\jdk-24.0.1\lib"
mklink /d "C:\Program Files\Java\defaultjava\conf" "C:\Program Files\Java\jdk-24.0.1\conf"
dir "C:\Program Files\Java\defaultjava"
java -version

pause>nul
goto begin
:end
echo Press any key to Exit.
pause>nul
@echo on

需要以管理员身份证运行上述bat文件。

运行效果如下:
image