gorilla-devs / GDLauncher

GDLauncher is a simple, yet powerful Minecraft custom launcher with a strong focus on the user experience
https://gdevs.io
GNU General Public License v3.0
1.22k stars 248 forks source link

Cannot start Forge 1.18 instance - No SLF4J providers #1189

Open dierks-m opened 2 years ago

dierks-m commented 2 years ago

Describe the bug I cannot launch a 1.18 Forge version

To Reproduce

  1. Install new Forge 1.18 instance (38.0.[1,2,3,4])
  2. Launch instance (this time, there may be a different error, as see in second screenshot)
  3. Launch instance again

Expected behavior For the instance to launch without crashing

Screenshots gdlauncher_slf4j Crash log here

This error sometimes also happens on the first launch: grafik Crash log here

At a first glance, the two log files look identical

Operating System:

Eskaan commented 2 years ago

You’re having the automatic setup whit latest beta (not stable) or the manual setup whit your local Java 17?

dierks-m commented 2 years ago

@Code-Ac Sorry, I completely forgot to mention that. These errors happen on the latest version (1.1.16-beta 3), which i switched to, because the release version did not work (1.1.15).

For the 1.1.15 version, the error looks like the following: grafik The little crash reason window contains the following text There is no crash log generated for this.

Both times, the automatic setup was chosen. However, I did just notice that for the 1.1.15 version, Java 16 (and not 17) is used.

Addendum: I just manually set up the Java versions for the stable version (1.1.15) to use Java 8 and 17, respectively, and now I get the same SLF4J error as with the unstable version

jeremiahwinsley commented 2 years ago

On 1.1.16-beta-3, I was able to get instances to launch by copying the Forge libraries (net/minecraftforge/1.18-38.0.4) manually from the Forge installer. So the issue seems to be that the libraries are not getting downloaded when the instance is created.

kreezxil commented 2 years ago

From discord chat.

user on windows, latest beta .3 build of 1.1.16, I'm using 1.1.15 stable, we both have this issue. I'm on Linux.

8:36 AM] katya: Hello, I am using GDlauncher beta to try to make a forge 1.18 instance but it doesn't load. A brief error pops up for a second before the message "your instance is loading" appears and its stuck there infinitely. any help would be appreciated : )
[8:49 AM] katya: i managed to screenshot the error as it popped for the one second

@katya
i managed to screenshot the error as it popped for the one second
[9:24 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: i wish that box didn't popup, it's the least helpful of the messages. instead get the log from 

click the >_ in the title bar
click on console tab
right click the giant box with the messages, anywhere
choose save as
put the new file here
[9:27 AM] katya:
instrument.ts:130 "..\..\java\17.0.1+12\bin\java.exe" "-XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump" "-Dos.name=Windows 10" "-Dos.version=10.0" -Djava.library.path="..\..\instances\Forge 1.18\natives" -Dminecraft.launcher.brand=GDLauncher -Dminecraft.launcher.version=1.0 -cp "..\..\datastore\libraries\cpw\mods\securejarhandler\0.9.54\securejarhandler-0.9.54.jar";"..\..\datastore\libraries\org\ow2\asm\asm\9.1\asm-9.1.jar";"..\..\datastore\libraries\org\ow2\asm\asm-commons\9.1\asm-commons-9.1.jar";"..\..\datastore\libraries\org\ow2\asm\asm-tree\9.1\asm-tree-9.1.jar";"..\..\datastore\libraries\org\ow2\asm\asm-util\9.1\asm-util-9.1.jar";"..\..\datastore\libraries\org\ow2\asm\asm-analysis\9.1\asm-analysis-9.1.jar";"..\..\datastore\libraries\net\minecraftforge\accesstransformers\8.0.4\accesstransformers-8.0.4.jar";"..\..\datastore\libraries\org\antlr\antlr4-runtime\4.9.1\antlr4-runtime-4.9.1.jar";"..\..\datastore\libraries\net\minecraftforge\eventbus\5.0.3\eventbus-5.0.3.jar";"..\..\datastore\libraries\net\minecraftforge\forgespi\4.0.10\forgespi-4.0.10.jar";"..\..\datastore\libraries\net\minecraftforge\coremods\5.0.1\coremods-5.0.1.jar";"..\..\datastore\libraries\cpw\mods\modlauncher\9.0.7\modlauncher-9.0.7.jar";"..\..\datastore\libraries\net\minecraftforge\unsafe\0.2.0\unsafe-0.2.0.jar";"..\..\datastore\libraries\com\electronwill\night-config\core\3.6.4\core-3.6.4.jar";"..\..\datastore\libraries\com\electronwill\night-config\toml\3.6.4\toml-3.6.4.jar";"..\..\datastore\libraries\org\apache\maven\maven-artifact\3.6.3\maven-artifact-3.6.3.jar";"..\..\datastore\libraries\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar";"..\..\datastore\libraries\net\jodah\typetools\0.8.3\typetools-0.8.3.jar";"..\..\datastore\libraries\org\apache\logging\log4j\log4j-api\2.14.1\log4j-api-2.14.1.jar";"..\..\datastore\libraries\org\apache\logging\log4j\log4j-core\2.14.1\log4j-core-2.14.1.jar";"..\..\datastore\libraries\net\minecrell\terminalconsoleappender\1.2.0\terminalconsoleappender-1.2.0.jar";"..\..\datastore\libraries\org\jline\jline-reader\3.12.1\jline-reader-3.12.1.jar";"..\..\datastore\libraries\org\jline\jline-terminal\3.12.1\jline-terminal-3.12.1.jar";"..\..\datastore\libraries\net\sf\jopt-simple\jopt-simple\5.0.4\jopt-simple-5.0.4.jar";"..\..\datastore\libraries\org\spongepowered\mixin\0.8.5\mixin-0.8.5.jar";"..\..\datastore\libraries\org\openjdk\nashorn\nashorn-core\15.3\nashorn-core-15.3.jar";"..\..\datastore\libraries\com\google\guava\guava\31.0.1-jre\guava-31.0.1-jre.jar";"..\..\datastore\libraries\com\google\code\gson\gson\2.8.8\gson-2.8.8.jar";"..\..\datastore\libraries\cpw\mods\bootstraplauncher\0.1.17\bootstraplauncher-0.1.17.jar";"..\..\datastore\libraries\net\minecraftforge\fmlloader\1.18-38.0.8\fmlloader-1.18-38.0.8.jar";"..\..\datastore\libraries\com\mojang\blocklist\1.0.6\blocklist-1.0.6.jar";"..\..\datastore\libraries\com\mojang\patchy\2.1.6\patchy-2.1.6.jar";"..\..\datastore\libraries\com\github\oshi\oshi-core\5.8.2\oshi-core-5.8.2.jar";"..\..\datastore\libraries\net\java\dev\jna\jna\5.9.0\jna-5.9.0.jar";"..\..\datastore\libraries\net\java\dev\jna\jna-platform\5.9.0\jna-platform-5.9.0.jar";"..\..\datastore\libraries\org\slf4j\slf4j-api\1.8.0-beta4\slf4j-api-1.8.0-beta4.jar";"..\..\datastore\libraries\org\apache\logging\log4j\log4j-slf4j18-impl\2.14.1\log4j-slf4j18-impl-2.14.1.jar";"..\..\datastore\libraries\com\ibm\icu\icu4j\69.1\icu4j-69.1.jar";"..\..\datastore\libraries\com\mojang\javabridge\1.2.24\javabridge-1.2.24.jar";"..\..\datastore\libraries\io\netty\netty-all\4.1.68.Final\netty-all-4.1.68.Final.jar";"..\..\datastore\libraries\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar";"..\..\datastore\libraries\commons-io\commons-io\2.11.0\commons-io-2.11.0.jar";"..\..\datastore\libraries\commons-codec\commons-codec\1.15\commons-codec-1.15.jar";"..\..\datastore\libraries\com\mojang\brigadier\1.0.18\brigadier-1.0.18.jar";"..\..\datastore\libraries\com\mojang\datafixerupper\4.0.26\datafixerupper-4.0.26.jar";"..\..\datastore\libraries\com\mojang\authlib\3.2.38\authlib-3.2.38.jar";"..\..\datastore\libraries\org\apache\commons\commons-compress\1.21\commons-compress-1.21.jar";"..\..\datastore\libraries\org\apache\httpcomponents\httpclient\4.5.13\httpclient-4.5.13.jar";"..\..\datastore\libraries\commons-logging\commons-logging\1.2\commons-logging-1.2.jar";"..\..\datastore\libraries\org\apache\httpcomponents\httpcore\4.4.14\httpcore-4.4.14.jar";"..\..\datastore\libraries\it\unimi\dsi\fastutil\8.5.6\fastutil-8.5.6.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl\3.2.2\lwjgl-3.2.2.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl-jemalloc\3.2.2\lwjgl-jemalloc-3.2.2.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl-openal\3.2.2\lwjgl-openal-3.2.2.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl-opengl\3.2.2\lwjgl-opengl-3.2.2.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl-glfw\3.2.2\lwjgl-glfw-3.2.2.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl-stb\3.2.2\lwjgl-stb-3.2.2.jar";"..\..\datastore\libraries\org\lwjgl\lwjgl-tinyfd\3.2.2\lwjgl-tinyfd-3.2.2.jar";"..\..\datastore\libraries\com\mojang\text2speech\1.11.3\text2speech-1.11.3.jar";"..\..\datastore\libraries\net\minecraft\1.18.jar" -Xmx16384m -Xms16384m -Dminecraft.applet.TargetDirectory="..\..\instances\Forge 1.18" -Dfml.ignorePatchDiscrepancies=true -Dfml.ignoreInvalidMinecraftCertificates=true -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xms256m -DignoreList=bootstraplauncher,securejarhandler,asm-commons,asm-util,asm-analysis,asm-tree,asm,client-extra,fmlcore,javafmllanguage,mclanguage,forge-,1.18.jar -DmergeModules=jna-5.8.0.jar,jna-platform-58.0.jar,java-objc-bridge-1.0.0.jar -DlibraryDirectory="..\..\datastore\libraries" -p "..\..\datastore\libraries"/cpw/mods/bootstraplauncher/0.1.17/bootstraplauncher-0.1.17.jar;"..\..\datastore\libraries"/cpw/mods/securejarhandler/0.9.54/securejarhandler-0.9.54.jar;"..\..\datastore\libraries"/org/ow2/asm/asm-commons/9.1/asm-commons-9.1.jar;"..\..\datastore\libraries"/org/ow2/asm/asm-util/9.1/asm-util-9.1.jar;"..\..\datastore\libraries"/org/ow2/asm/asm-analysis/9.1/asm-analysis-9.1.jar;"..\..\datastore\libraries"/org/ow2/asm/asm-tree/9.1/asm-tree-9.1.jar;"..\..\datastore\libraries"/org/ow2/asm/asm/9.1/asm-9.1.jar --add-modules ALL-MODULE-PATH --add-opens java.base/java.util.jar=cpw.mods.securejarhandler --add-exports java.base/sun.security.util=cpw.mods.securejarhandler --add-exports jdk.naming.dns/com.sun.jndi.dns=java.naming cpw.mods.bootstraplauncher.BootstrapLauncher --username Kalexiva --version 1.18 --gameDir "..\..\instances\Forge 1.18" --assetsDir "..\..\datastore\assets" --assetIndex 1.18 --uuid 8dfb68579a7d4020903b3e841ebab44c --accessToken __HIDDEN_TOKEN__ --clientId ${clientid} --xuid ${auth_xuid} --userType mojang --versionType release --launchTarget forgeclient --fml.forgeVersion 38.0.8 --fml.mcVersion 1.18 --fml.forgeGroup net.minecraftforge --fml.mcpVersion 20211130.085255 --width 854 --height 480
instrument.ts:130 2021-12-02 10:25:16,620 main WARN Advanced terminal features are not available in this environment

instrument.ts:130 [10:25:16] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher running: args [--username, Kalexiva, --version, 1.18, --gameDir, ..\..\instances\Forge 1.18, --assetsDir, ..\..\datastore\assets, --assetIndex, 1.18, --uuid, 8dfb68579a7d4020903b3e841ebab44c, --accessToken, ????????, --clientId, ${clientid}, --xuid, ${auth_xuid}, --userType, mojang, --versionType, release, --launchTarget, forgeclient, --fml.forgeVersion, 38.0.8, --fml.mcVersion, 1.18, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20211130.085255, --width, 854, --height, 480]

instrument.ts:130 [10:25:16] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher 9.0.7+91+master.8569cdf starting: java version 17.0.1 by Eclipse Adoptium
Expand
-1638458769908.log
13 KB
[9:28 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: ok, can you tell me which version of gdl youu are using?
[9:29 AM] katya: 1.1.16, the beta version
[9:29 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: ok, i'm testing agasinst 1.1.15, i had to go back to that becauszsess the "udpate all" button does't work and I'm a big pack dev.
[9:30 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: alright i got the same issue
[9:30 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: i take it you're on windows
[9:30 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: linux here
[9:30 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: so it's most def not you
[9:31 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: @! Read The FAQ before asking ! do you know anything about the 1.18 not wanting to use java 17 issue. ie the above crash. from katya
[9:31 AM] Kreezxil [Mnjro KDE:5 i3wm:1]: it's been reported https://github.com/gorilla-devs/GDLauncher/issues/1189
GitHub
Cannot start Forge 1.18 instance - No SLF4J providers · Issue #1189...
Describe the bug I cannot launch a 1.18 Forge version To Reproduce Install new Forge 1.18 instance (38.0.[1,2,3,4]) Launch instance (this time, there may be a different error, as see in second scre...
kreezxil commented 2 years ago

To reiterate the workaround discovered. Download this file https://maven.minecraftforge.net/net/minecraftforge/forge/1.18-38.0.8/forge-1.18-38.0.8-installer.jar and run it, when it pops install the client or server as the case maybe. Find the libraries folder and copy it to your instance.

EldritchGarden commented 2 years ago

On windows it seems the workaround is slightly different. For windows instead of copying the libraries to your instance folder, you copy it to the datastore folder.

  1. Install forge to .minecraft (normal minecraft launcher)
  2. copy contents of C:\Users\<user>\AppData\Roaming\.minecraft\libraries folder to C:\Users\<user>\AppData\Roaming\gdlauncher_next\datastore\libraries folder
kreezxil commented 2 years ago

Alright, should be noted that on Linux the data store will be stored in /home/username/.config/gdlauncher_next/datastore/ and that is where we Linux users will copy these library files.

esotericist commented 2 years ago

To reiterate the workaround discovered. Download this file https://maven.minecraftforge.net/net/minecraftforge/forge/1.18-38.0.8/forge-1.18-38.0.8-installer.jar and run it, when it pops install the client or server as the case maybe. Find the libraries folder and copy it to your instance.

i would dearly love to use this solution, but the forge installer refuses to run without me successfully running the minecraft launcher first, and the minecraft launcher fails to launch for me as discussed in issues like this.

i've been unable to find a solution to get the vanilla launcher to work, which has mostly been not an issue since for everything short of 1.18 forge gdlauncher works just fine.

Diridibindy commented 2 years ago

@esotericist make sure you are using java 17 to launch the game

esotericist commented 2 years ago

@esotericist make sure you are using java 17 to launch the game

yes, that's already addressed.

esotericist commented 2 years ago

after talking with folks on the forge discord, i was able to find a hilarious workaround:

echo "{  \"profiles\": { } }" > ~/.minecraft/launcher_profiles.json

typing this in a terminal created a 'blank' profile, which the minecraft forge installer was able to happily use as evidence the vanilla launcher had been 'successfully' run.

once that was done, i was able to copy the libraries as described above

Rosethorns commented 2 years ago

I'd like to add that these workarounds are not a solution for the "No SLF4J Provider." crash.

Which according to this http://www.slf4j.org/codes.html#noProviders Isn't supposed to crash. This is simply a warning and GDL is escaping the process on that warning.

esotericist commented 2 years ago

I'd like to add that these workarounds are not a solution for the "No SLF4J Provider." crash.

Which according to this http://www.slf4j.org/codes.html#noProviders Isn't supposed to crash. This is simply a warning and GDL is escaping the process on that warning.

that's because it isn't a crash: it's a somewhat uninformative indication that no providers were available. because the library that would have done so doesn't exist. because gdlauncher is not fetching the relevant libraries.

this is why using the forge installer then copying the libraries over works, and is a solution for the "crash".

Rosethorns commented 2 years ago

Uh. NO. SLF4J is included in the libraries copied over. This is an entirely separate issue. Instances that were running fine after moving 1.18 libraries over can suddenly stop working with the SLF4J no Providers error. And will persist until the instance is deleted and remade.

This is a testable and re testable phenomenon. SLF4J noProviders is not the same issue as the libraries issue.

The following is a screenshot of an instance of Better Minecraft 1.18 [Forge] crashing with the appropriate libraries having been installed and moved via the forge installer. GDL is falsely flagging a warning as an error (as stated in the provided link) and exiting the launch. image

They are not the same issue.

kreezxil commented 2 years ago

SLF4J issue needs to be moved to it's own issue. just reference this issue because of the soft-relevancy.

On Sun, Dec 5, 2021 at 10:43 PM Rosie @.***> wrote:

Uh. NO. SLF4J is included in the libraries copied over. This is an entirely separate issue. Instances that were running fine after moving 1.18 libraries over can suddenly stop working with the SLF4J no Providers error. And will persist until the instance is deleted and remade.

This is a testable and re testable phenomenon. SLF4J noProviders is not the same issue as the libraries issue.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/gorilla-devs/GDLauncher/issues/1189#issuecomment-986434158, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA5TJCG2WPIKQCTVMMWENTLUPQ5NXANCNFSM5JE3ICSA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Eskaan commented 2 years ago

Does the issue still persist? And does it even persist after using the new repair instance feature?

Flying-crypt commented 2 years ago

For me, the issue still persists, even after using the repair instance feature. (GDL v1.1.20)

hzswdef commented 7 months ago

Finally found a fix after hours and hours of researching.

https://github.com/PrismLauncher/PrismLauncher/issues/916#issuecomment-1479847620