samolego / FabricTailor

A server-side or singleplayer skin changing mod for fabric.
https://modrinth.com/mod/FabricTailor
GNU Lesser General Public License v3.0
109 stars 15 forks source link

Nothing Happens in Game but i have this on the Launcher Log #115

Open xubilinhaloko opened 2 weeks ago

xubilinhaloko commented 2 weeks ago

I'm using Prism Launcher. When trying to set any skin with Player Name or Explorer Path or any other option nothing happens The character twitches a little as if it was loading the skin but it does not load.

Prism launcher log gives me this message:

[22:55:25] [Worker-Main-11/ERROR]: Caught exception in thread Thread[Worker-Main-11,4,main]
java.lang.NoSuchFieldError: EXACT
    at com.google.common.net.InternetDomainName.findSuffixOfType(InternetDomainName.java:170) ~[guava-31.1-jre.jar:?]
    at com.google.common.net.InternetDomainName.<init>(InternetDomainName.java:151) ~[guava-31.1-jre.jar:?]
    at com.google.common.net.InternetDomainName.from(InternetDomainName.java:210) ~[guava-31.1-jre.jar:?]
    at com.mojang.authlib.yggdrasil.TextureUrlChecker.handler$fbf000$fabrictailor$ft_allowAllTextureDomains(TextureUrlChecker.java:527) ~[authlib-4.0.43.jar:?]
    at com.mojang.authlib.yggdrasil.TextureUrlChecker.isAllowedTextureDomain(TextureUrlChecker.java:36) ~[authlib-4.0.43.jar:?]
    at com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService.getTextures(YggdrasilMinecraftSessionService.java:133) ~[authlib-4.0.43.jar:?]
    at net.minecraft.class_1071.method_4653(class_1071.java:100) ~[client-intermediary.jar:?]
    at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1395) ~[?:?]
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?]
    at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?]
    at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?]
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?]
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?]

I sent it to ChatGPT and it gives me the following output:


The error you're seeing (java.lang.NoSuchFieldError: EXACT) indicates that the code tried to access a field called EXACT that doesn't exist in the class it's trying to use. This type of error usually occurs when there are incompatibilities between library versions, especially in the case of external libraries such as Guava (guava-31.1-jre.jar), which is mentioned in the log.

Here's what's happening:

NoSuchFieldError: The error means that the code tried to access an EXACT field in a class, but this field was not found. This can happen for different reasons:

The version of the library the code is using (Guava) does not contain this field.
There has been a change in the library API between different versions, removing or renaming the field.
Location of the error: The error occurred within the InternetDomainName class of the guava-31.1-jre.jar library. This suggests that the InternetDomainName class is trying to use
``` the EXACT field which is probably not present in the version of the Guava library you are using.

Possible cause: This type of error often occurs when there is a conflict between versions of dependencies. For example, if some mod or library you're using depends on an older or newer version of the Guava library, there may be incompatibilities.

Suggested solution:

Check that the versions of the libraries used in your project are compatible with each other. In this case, you may be using a version of Guava (such as 31.1-jre) that is not compatible with the code that is trying to access the EXACT field.
Consider upgrading or downgrading the Guava library, depending on compatibility with other dependencies in your project.
This incompatibility may be caused by a mod or plugin that depends on a different version of the Guava library.

Translated with DeepL.com (free version)
samolego commented 2 weeks ago

Seems like a mixin error. Thanks for rrporting.