PojavLauncherTeam / PojavLauncher

A Minecraft: Java Edition Launcher for Android and iOS based on Boardwalk. This repository contains source code for Android platform.
GNU Lesser General Public License v3.0
6.86k stars 1.29k forks source link

[BUG] Issues with older Forge versions #2468

Closed NotAHero04 closed 2 years ago

NotAHero04 commented 2 years ago

Describe the bug

I was addressing the weird behavior of Forge 1.3.2 that prevents itself from launching. Here's what I did: Step 1: Add the correct libraries to .minecraft/lib/. It didn't complain about the missing libraries anymore, but the loading process just stopped at

[INFO] [ForgeModLoader] Forge Mod Loader version 3.1.50.400 for Minecraft client:1.3.2, server:1.3.2 loading

Step 2: Change the minecraft main class argument to net.minecraft.client.Minecraft. This time it returned [INFO] [STDERR] Exception in thread "main" java.lang.NoClassDefFoundError: org/lwjgl/LWJGLException

which indicates that LWJGL library is missing (?)

The game just exits with Java code 0.

The game calls the wrong class (net.minecraft.client.Minecraft, expected net.minecraft.client.main.Main), which then Java throws a java.lang.NoClassDefFoundError.

The log file and images/videos

After step 1: latestlog.txt After step 2: latestlog.txt

latestlog.txt

latestlog.txt

Steps To Reproduce

See above.

Expected Behavior

These Forge versions should be able to launch.

Platform

- Device model: Vsmart Star 5
- CPU architecture: aarch64
- Android version: 11
- PojavLauncher version: crocus-299-f1bd70996-v3_openjdk

Anything else?

No.

artdeell commented 2 years ago

I tested forge for 1.2.5, and it works nicely. Looks like the reason why it doesn't start is that the forge attempts to reload itself in a different classloader which does not read the default classpath. Which leads LWJGL not to be found because Pojav uses its own one, not the Minecraft one.

NotAHero04 commented 2 years ago

I keep digging and finally find more issue with older versions of Forge. So...

khanhduytran0 commented 2 years ago

As of the missing class was added, could you try them? (delete lwjgl3/version file if you are still getting missing class)

NotAHero04 commented 2 years ago

As of the missing class was added, could you try them? (delete lwjgl3/version file if you are still getting missing class)

Still doesn't work

NotAHero04 commented 2 years ago

The log is the same as above. I tried deleting the entire lwjgl3 folder and then get a new installation.

NotAHero04 commented 2 years ago

Forge 1.6.4 (and 1.7.2) works after switching the ASM library version to 5.2. Needs more testing on older ones.

NotAHero04 commented 2 years ago

I took a look back at the logs, and there's a java.lang.IllegalArgumentException which pointed to the ASM library (1.3.2). To make it run with other libraries, I must directly patch the bytecode (since I have no IDEs available), but, let me test it. Edit: Never mind, it can be compiled with a single javac command. Edit 2: It doesn't work.

NotAHero04 commented 2 years ago

@Aerolome seems to get most of the remaining Forge versions work with "changing ASM library" method. This will be the ultimate workaround until further notice. Screenshot_20220209-063440~2

Forever2397 commented 2 years ago

@Aerolome seems to get most of the remaining Forge versions work with "changing ASM library" method. This will be the ultimate workaround until further notice. Screenshot_20220209-063440~2

I want your files Can I download files from you

GaucovyAero commented 2 years ago

@Aerolome seems to get most of the remaining Forge versions work with "changing ASM library" method. This will be the ultimate workaround until further notice. Screenshot_20220209-063440~2

I want your files Can I download files from you

the ones on notahero's repo are only semi-working, i can fix one for you, which one do you want?

Forever2397 commented 2 years ago

Aerolome I want you to fix this

Forever2397 commented 2 years ago

@Aerolome seems to get most of the remaining Forge versions work with "changing ASM library" method. This will be the ultimate workaround until further notice. Screenshot_20220209-063440~2

I want your files Can I download files from you

the ones on notahero's repo are only semi-working, i can fix one for you, which one do you want?

for more details you can see my problem here #3511

AjTheOpsuGamer commented 2 years ago

Please Download java runtime or only play normal mc.

On Sun, 21 Aug 2022, 21:43 Forever2397, @.***> wrote:

@Aerolome https://github.com/Aerolome seems to get most of the remaining Forge versions work with "changing ASM library" method. This will be the ultimate workaround until further notice. [image: Screenshot_20220209-063440~2] https://user-images.githubusercontent.com/84689840/153093717-e13a4d04-33c7-4668-b861-3f8a980cee84.png

I want your files Can I download files from you

the ones on notahero's repo are only semi-working, i can fix one for you, which one do you want?

for more details you can see my problem here #3511 https://github.com/PojavLauncherTeam/PojavLauncher/issues/3511

— Reply to this email directly, view it on GitHub https://github.com/PojavLauncherTeam/PojavLauncher/issues/2468#issuecomment-1221549048, or unsubscribe https://github.com/notifications/unsubscribe-auth/AX2AVMG25XOXNIIMNSSZUBTV2IXAZANCNFSM5K3ONELA . You are receiving this because you are subscribed to this thread.Message ID: @.***>