[Bug] Installing `SNAPSHOT` versions of LiteLoader fails on first try if download source is `Mojang`
平台 | Platform
Windows 11
问题描述 | Problem Description
If the download source is BMCLAPI, you can install it successfully.
- Make sure to use a fresh game directory.
- Change Download Source to Mojang
- In
Download - Game, select any version between 1.8 and 1.12.2 - Select LiteLoader and install
- If the LiteLoader is a SNAPSHOT version, you will get a failure result; if the version NOT SNAPSHOT, then is normal
From the logs, the logic of HMCL obtaining the LiteLoader version is consistent between the two download sources, but the file structure of the requested site when using Mojang is different, so the corresponding file cannot be found.
Interestingly, if you successfully install it using BMCLAPI, manually change it to Mojang and install another instance of the same game version and LL version again, it will also succeed. This is a bit like #834.
启动器崩溃报告 / 启动器日志文件 | Launcher Crash Report / Launcher Log File
Log.
From the logs, the logic of HMCL obtaining the LiteLoader version is consistent between the two download sources, but the file structure of the requested site when using Mojang is different, so the corresponding file cannot be found.
I'll check it.
Interestingly, if you successfully install it using BMCLAPI, manually change it to Mojang and install another instance of the same game version and LL version again, it will also succeed. This is a bit like https://github.com/HMCL-dev/HMCL/issues/834.
This is caused by the policy which makes instances share libraries.
I see.
http://dl.liteloader.com/repo/com/mumfrey/liteloader/1.9.4/liteloader-1.9.4-SNAPSHOT.jar this URL is created from:
{
"repo": {
"stream": "RELEASE",
"type": "m2",
"url": "http://dl.liteloader.com/repo/",
"classifier": ""
},
"artefacts": {
"com.mumfrey:liteloader": {
"571ad5e6edd5ff40259570c9be588bb5": {
"tweakClass": "com.mumfrey.liteloader.launch.LiteLoaderTweaker",
...
"stream": "RELEASE",
"file": "liteloader-1.9.4.jar",
"version": "1.9.4",
"md5": "571ad5e6edd5ff40259570c9be588bb5",
"timestamp": "1479472002"
},
...
}
},
"snapshots": {
...
"com.mumfrey:liteloader": {
"986fd1ee9525cb0dcab7609401cef754": {
"tweakClass": "com.mumfrey.liteloader.launch.LiteLoaderTweaker",
...
"stream": "SNAPSHOT",
"file": "liteloader-1.9.4-SNAPSHOT.jar",
"version": "1.9.4-SNAPSHOT",
"build": "1.9.4-SNAPSHOT-r84EA1AB-b18-18",
"md5": "986fd1ee9525cb0dcab7609401cef754",
"timestamp": "1465835329",
"lastSuccessfulBuild": 18
},
...
}
},
...
}
http://dl.liteloader.com/repo: comes from$.repo.url/com/mumfrey/liteloader: hard coded/1.9.4: game version/liteloader-1.9.4-SNAPSHOT.jar: $.snapshots."com.mumfrey:liteloader".[].file
The URL for download a snapshot version should be http://repo.mumfrey.com/content/repositories/snapshots/
Maybe a hard coded download URL will be included into HMCL. :( Bad implementation
怀疑在 2025 年继续支持 LiteLoader 的必要性 :)