电脑同时配置java8和java17

张开发
2026/4/16 1:07:23 15 分钟阅读

分享文章

电脑同时配置java8和java17
在Windows服务器上同时跑Java 8和Java 17的JAR包项目核心思路就是让两个服务各自使用专属的Java版本互不干扰。最可靠、最推荐的做法是使用启动脚本Batch文件在脚本里明确指定每个服务用的Java路径完全绕开系统全局的 JAVA_HOME 环境变量。下面是具体的操作步骤 方案一使用启动脚本Batch文件独立运行最推荐这是服务器部署中最灵活、最清晰的方法。每个服务都有自己的启动脚本脚本里直接指定使用哪个JDK。 第一步规划目录结构建议为每个服务创建独立的文件夹把JAR包、配置、日志和启动脚本都放一起方便管理。例如textD:\Services├─ ServiceA_JDK8\ # 需要 Java 8 的服务│ ├─ serviceA.jar│ ├─ start_serviceA.bat # Java 8 的启动脚本│ └─ logs\ # 日志文件└─ ServiceB_JDK17\ # 需要 Java 17 的服务├─ serviceB.jar├─ start_serviceB.bat # Java 17 的启动脚本└─ logs 第二步编写启动脚本在各自的服务目录下创建两个 .bat 文件内容如下start_serviceA.bat (用于Java 8服务)batchecho offecho echo 正在启动 ServiceA (使用 Java 8)echo :: 设置此服务专用的Java 8路径请替换为你的实际路径set “JAVA_HOMEC:\Program Files\Java\jdk1.8.0_xxx”set “PATH%JAVA_HOME%\bin;%PATH%”:: 验证Java版本echo 使用的Java版本java -version:: 启动JAR包并指定日志输出java -jar D:\Services\ServiceA_JDK8\serviceA.jar D:\Services\ServiceA_JDK8\logs\stdout.log 21echo 服务A已启动。pausestart_serviceB.bat (用于Java 17服务)batchecho offecho echo 正在启动 ServiceB (使用 Java 17)echo :: 设置此服务专用的Java 17路径请替换为你的实际路径set “JAVA_HOMEC:\Program Files\Java\jdk-17.0.x”set “PATH%JAVA_HOME%\bin;%PATH%”:: 验证Java版本echo 使用的Java版本java -version:: 启动JAR包java -jar D:\Services\ServiceB_JDK17\serviceB.jar D:\Services\ServiceB_JDK17\logs\stdout.log 21echo 服务B已启动。pause关键点脚本里的 set “JAVA_HOME…” 和 set “PATH%JAVA_HOME%\bin;%PATH%” 这2行会临时覆盖系统的全局设置确保后续的 java -jar 命令用的是指定的版本。

更多文章