Hex-Dragon / PCL2

Plain Craft Launcher(我的世界启动器 PCL)的源代码,为支持社区研究而公开。
https://afdian.com/a/LTCat
Other
2.61k stars 192 forks source link

对于 “缺少 Java 时自动下载” 的功能,似乎可以直接使用 Oracle 提供的 JDK 直链而非手动更新的链接。 #4455

Closed RimacC2-EV closed 2 months ago

RimacC2-EV commented 2 months ago

检查项

描述

在前几天(8月头几天)我尝试在缺少Java的情况下启动 Minecraft 1.21,并且让 PCL 自动下载了Java,但是它下载了 JDK 21.0.3,我记得那时候 JDK 21.0.4 都出了啊() 屏幕截图 2024-08-09 214923 屏幕截图 2024-08-09 215848

或者多增加几个 JDK 的下载选项呗( .zip:https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.zip; .exe:https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.exe; .msi:https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.msi; )

原因

这项优化让我们可以更方便地自定义下载 JDK 的类型。 如果没有这项优化,我每次都必须重新更新 JDK,让操作变得很麻烦。但似乎这不是必须的操作

allMagicNB commented 2 months ago

PCL 的 Java 补全依赖的是官启的补全方式。

Dainsleif233 commented 2 months ago

~为什么一定要追求最新版本呢~ .exe 和 .msi 文件无法做到自动安装,需要用户手动点击下一步(也许是 目前 PCL 采用的是官启的补全方式 image

msi安装包可以用/passive参数自动安装,新版有新的优化,修了Bug,默认为用户提供最新版肯定是不会错的

Dainsleif233 commented 2 months ago

检查项

描述

在前几天(8月头几天)我尝试在缺少Java的情况下启动 Minecraft 1.21,并且让 PCL 自动下载了Java,但是它下载了 JDK 21.0.3,我记得那时候 JDK 21.0.4 都出了啊() 屏幕截图 2024-08-09 214923 屏幕截图 2024-08-09 215848

或者多增加几个 JDK 的下载选项呗( .zip:https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.zip; .exe:https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.exe; .msi:https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.msi;

原因

这项优化让我们可以更方便地自定义下载 JDK 的类型。 如果没有这项优化,我每次都必须重新更新 JDK,让操作变得很麻烦。~但似乎这不是必须的操作~

确实可以换成直链,不过这里提醒一点,OracleJDK 是闭源软件,建议启动器默认提供其他开源的JDK。

JingHai-Lingyun commented 2 months ago

给龙猫看看.png

Pigeon0v0 commented 2 months ago

我记得是有相关 Issue 说使用来自 Mojang 的 Java 的,因为可以最大限度排除 Java 对游戏的影响

Java 新版本对游戏的优化是微乎其微的,更别说 Bug 修复了

Dainsleif233 commented 2 months ago

确实可以换成直链,不过这里提醒一点,OracleJDK 是闭源软件,建议启动器默认提供其他开源的JDK。

你的意思是?OpenJDK?

是的,例如ZuluJDK、Microsoft Build of OpenJDK等

RimacC2-EV commented 2 months ago

~为什么一定要追求最新版本呢~ .exe 文件无法做到自动安装,需要用户手动点击下一步(也许是 目前 PCL 采用的是官启的补全方式 image

原来是这样吗? 我看自动补全的 Java 的签名是 Oracle Corporation,然而官启下载的 Java 是 Microsoft Corporation 的签名······

LTCatt commented 2 months ago

自动下载的是 Mojang 官方启动器使用的 Java,这样能最大程度的降低 Java 版本可能带来的不兼容问题,暂时不会修改,抱歉