HMCL-dev / HMCL

A Minecraft Launcher which is multi-functional, cross-platform and popular
https://hmcl.huangyuhui.net
GNU General Public License v3.0
6.89k stars 675 forks source link

[Feature] HMCL启动方式 #3217

Closed ciaotanjiajun closed 2 months ago

ciaotanjiajun commented 2 months ago

描述 | Description

HCML支持识别文件夹内的Java文件以便做到便携打开,就像图二PCL2那样(虽然PCL2不用Java就能打开)

原因 | Reason

屏幕截图 2024-08-03 234004 屏幕截图 2024-08-03 234100
hejiehao commented 2 months ago

https://docs.hmcl.net/modpack/bundled-java.html#exe-%E7%89%88%E6%9C%AC

ciaotanjiajun commented 2 months ago

https://docs.hmcl.net/modpack/bundled-java.html#exe-%E7%89%88%E6%9C%AC

感谢你的帮助,不过还是希望HMCL可以优化一下相关功能

burningtnt commented 2 months ago

所以呢?这功能不是有了吗?

ciaotanjiajun commented 2 months ago

所以呢?这功能不是有了吗?

我希望HMCL可以更加灵活的检查Java文件,而不是局限于某一文件夹

allMagicNB commented 2 months ago

所以呢?这功能不是有了吗?

我希望HMCL可以更加灵活的检查Java文件,而不是局限于某一文件夹

那么,如果有多个 Java 呢?

ciaotanjiajun commented 2 months ago

所以呢?这功能不是有了吗?

我希望HMCL可以更加灵活的检查Java文件,而不是局限于某一文件夹

那么,如果有多个 Java 呢? 那这不就是HMCL开发组该考虑的问题嘛,如果这个问题的解决方法是这样子那我将无话可说,但是如果可以优化一下该功能将会更好,我不是来和你们扯绊子,我只是来反馈或者提供一些想法,最终决定权在你们手上,我也希望这个项目能做的更好,有问题就提,没有问题更好

3gf8jv4dv commented 2 months ago

I guess what you want is a feature similar to PCL’s to traverse folders to search for Java. If you can make it clear at the beginning, maybe the subsequent communication will not be so complicated. 我猜你想要的是类似于 PCL 的遍历文件夹搜索 Java 的功能,如果一开始你能说清楚的话或许后面的沟通就没有那么复杂。

PCL can be opened without Java because it is developed based on Visual Basic .NET, while HMCL is developed based on Java. PCL 不用 Java 就能打开是因为它基于 Visual Basic .NET 开发,而 HMCL 是基于 Java 开发的。

As for whether and whether this function can and should be implemented, it depends on the maintainer’s ideas. 至于这个功能能否以及是否应该实现,需要看维护者的想法。

ciaotanjiajun commented 2 months ago

我想你想要的是一个类似于 PCL 的函数,用于遍历文件夹以搜索 Java。如果一开始能说清楚,或许后续的沟通就不会那么复杂了。 我猜你想要的是类似于 PCL 的遍历文件夹搜索 Java 的功能,如果一开始你能说清楚的话或许后面的沟通就没有那么复杂。

PCL 可以在没有 Java 的情况下打开,因为它是基于 Visual Basic .NET 开发的,而 HMCL 是基于 Java 开发的。 PCL 不用 Java 就能打开是因为它基于 Visual Basic .NET 开发,而 HMCL 是基于 Java 开发的。

至于这个功能是否能够以及是否应该实现,就要看维护者的想法了。 至于这个功能能否以及是否应该实现,需要看维护者的想法。

谢谢,因为我不是相关程序的开发者,对这些东西不太明白,所以我只能尽我所能的表述这些事情

burningtnt commented 2 months ago

HMCL 打开时会由 HMCLauncher 扫描同目录下的 jre-x86/arm64/x64 目录,如果存在则直接启动。

如果你是指能否直接让游戏通过对应的 Java 启动,那么,你可以手动指定 Java 路径 如果你是指能否在安装整合包时通过对应的 Java 启动,那么暂无此功能 如果你是指能否在 Java 列表中直接看到这些 Java,那么暂无此功能

此外我必须指出你原来问题的描述就是一坨,和后来 @3gf8jv4dv 猜出你想要“遍历目录”的功能完全不同。

所以,你到底想要什么功能?

allMagicNB commented 2 months ago

他可能想要 HMCLauncher 能遍历文件夹,寻找 Java 后使用它启动 HMCL,不仅限于固定名称文件夹。应该没指游戏

ciaotanjiajun commented 2 months ago

我自建的Java文件夹hmcl启动器在启动的时候检测不到提示未安装Java,而不是在启动器内选择Java检测不出来,也许我是缺少了“启动器”这一称谓

ciaotanjiajun commented 2 months ago

hmcl启动器内是可以检测到我自建的Java文件夹并且正常使用Java加载游戏,但这是取决于hmcl启动器已经正常打开,而不是在外面提示未安装Java

burningtnt commented 2 months ago

https://docs.hmcl.net/modpack/bundled-java.html#exe-%E7%89%88%E6%9C%AC 你需要严格按照这里的定义放置 Java

ciaotanjiajun commented 2 months ago

https://docs.hmcl.net/modpack/bundled-java.html#exe-%E7%89%88%E6%9C%AC 你需要严格按照这里的定义放置 Java

我想表达的意思是能否优化一下这个功能,我使用.msi安装Java到自建文件夹,并没有该文档所说的文件夹可以打开,但是使用提取.zip的方式则不行

burningtnt commented 2 months ago

https://docs.hmcl.net/modpack/bundled-java.html#exe-%E7%89%88%E6%9C%AC 你需要严格按照这里的定义放置 Java

我想表达的意思是能否优化一下这个功能,我使用.msi安装Java到自建文件夹,并没有该文档所说的文件夹可以打开,但是使用提取.zip的方式则不行

你需要提取到 jre-x86 文件夹。我不知道你在干什么。这个功能已经有了,只是你不会用

ciaotanjiajun commented 2 months ago

https://docs.hmcl.net/modpack/bundled-java.html#exe-%E7%89%88%E6%9C%AC 你需要严格按照这里的定义放置 Java

我想表达的意思是能否优化一下这个功能,我使用.msi安装Java到自建文件夹,并没有该文档所说的文件夹可以打开,但是使用提取.zip的方式则不行

你需要提取到 jre-x86 文件夹。我不知道你在干什么。这个功能已经有了,只是你不会用

https://www.123pan.com/s/xFQrVv-szUkd.html 这是视频,我想这视频应该能清楚的表达我的意思,请您抽出您宝贵的时间来看一下

3gf8jv4dv commented 2 months ago

@ciaotanjiajun

After watching your video, there are a few things I would like to point out. 看了你的视频,有几点我要指出。

First of all, considering the architecture of the Java you downloaded, the folder name created at the beginning of the video should be jre-x64 instead of Java. 首先,考虑到你下载的 Java 的架构,视频一开始创建的文件夹名字应该为 jre-x64 而不是 Java

Secondly, the latter two extraction methods also have problems in details. When using NanaZip to extract, you should enter the zulu8.80.0.17-ca-jdk8.0.422-win_x64 directory and extract all files/folders in the directory to jre-x64; when using the windows installer package to extract, you can directly select jre-x64 as the target directory, and there is no need to create a new first-level folder. 其次,后面两种提取方式细节上也有问题。使用 NanaZip 提取,应该在 NanaZip 软件内进入 zulu8.80.0.17-ca-jdk8.0.422-win_x64 目录后提取目录内的所有文件/文件夹至 jre-x64;使用 MSI 安装包提取,目标目录直接选择 jre-x64 即可,不需要新建一级文件夹。

EDIT: Zulu’s Java lacks JavaFX, so it is recommended to put Zulu 17 or 21 into jre-x64. If you really need to use Java 8, you can use other OpenJDK. Zulu 的 Java 缺少 JavaFX,建议将 Zulu 17 或 21 放入 jre-x64。如果确有需要使用 Java 8,可以换一个 OpenJDK。

burningtnt commented 2 months ago

你需要严格按照文档操作。而不是自己猜测 HMCLauncher 会扫 Java 文件夹

ciaotanjiajun commented 2 months ago

@ciaotanjiajun

After watching your video, there are a few things I would like to point out. 看了你的视频,有几点我要指出。

First of all, considering the architecture of the Java you downloaded, the folder name created at the beginning of the video should be jre-x64 instead of Java. 首先,考虑到你下载的 Java 的架构,视频一开始创建的文件夹名字应该为 jre-x64 而不是 Java

Secondly, the latter two extraction methods also have problems in details. When using NanaZip to extract, you should enter the zulu8.80.0.17-ca-jdk8.0.422-win_x64 directory and extract all files/folders in the directory to jre-x64; when using the windows installer package to extract, you can directly select jre-x64 as the target directory, and there is no need to create a new first-level folder. 其次,后面两种提取方式细节上也有问题。使用 NanaZip 提取,应该在 NanaZip 软件内进入 zulu8.80.0.17-ca-jdk8.0.422-win_x64 目录后提取目录内的所有文件/文件夹至 jre-x64;使用 MSI 安装包提取,目标目录直接选择 jre-x64 即可,不需要新建一级文件夹。

EDIT: Zulu’s Java lacks JavaFX, so it is recommended to put Zulu 17 or 21 into jre-x64. If you really need to use Java 8, you can use other OpenJDK. Zulu 的 Java 缺少 JavaFX,建议将 Zulu 17 或 21 放入 jre-x64。如果确有需要使用 Java 8,可以换一个 OpenJDK。

嗯,谢谢,但是我下载的是zulu的jdk fx,在自建“Java”文件夹下用msi安装可以打开hmcl启动器,但是提取则不行,我觉得hmcl启动器的扫描功能可能存在问题,所以一开始就是希望hmcl启动器可以优化一下该功能不是局限于jre-x64文件夹,如果hmcl启动器对于启动的解决方法是这个的话那我也不再多说什么。 目前已经使用快捷方式的方法使用zulu 8启动hmcl.jar了

allMagicNB commented 2 months ago

MSI 安装包不仅解压到安装路径了,还把安装路径加到 Path 环境变量中了。

ciaotanjiajun commented 2 months ago

MSI 安装包不仅解压到安装路径了,还把安装路径加到 环境变量中了。Path

噢,谢谢你,我知道了