Thursday, May 18, 2023

How to Fix java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied Error? Minecraft Solution

You can resolve java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied error in Minecraft by disabling your anti-virus and run. Later you can whitelist the lwjgl64.dll so that your anti-virus will not block it again. I have talked about java.lang.UnsatisfiedLinkError a couple of times on this blog e.g. here and here. But, today I am going to show you one more real-life example of java.lang.UnsatisfiedLinkError, which is more interesting. We'll also learn and how to deal with that. This problem is related to Minecraft, one of the most popular games written in Java. Precisely, we are going to solve the "Exception in thread "main" java.lang.UnsatisfiedLinkError: lwjgl64.dll: Access denied" error.

If you remember, Minecraft uses the lwjgl library, which is one of the most popular gaming libraries in the Java world. This library has some native components written to get access to native resources and GPU and provide the performance a game needed. One of the native components of this library is lwjgl64.dll, which is required for 64-bit computers.

Since Minecraft is a Java program, it loads this file dynamically at runtime and if it doesn't find or able to load this library it throws lwjgl64.dll access denied error and crashes. In order to solve this problem, you need to first confirm that the lwjgl64.dll exists and then find out why Minecraft, a Java program cannot access this file. This is what we'll do in this article.

And, If you are new to the Java world then I also recommend you go through these free Java programming courses to learn Java in a better and more structured way. This is one of the best and up-to-date courses to learn Java online.

How to solve java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied in Minecraft game



Cause of java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied

Yesterday I receive an email from one of my reader (Tanja) stating a problem with starting Minecraft and asking for my help to see if there any solution exists. Here is the exact email, thanks to Tanja for allowing me to post it here for other's benefit.



Hi Javin,

my sons (11 and 12) play Minecraft with a Passion. Unfortunately, we have a serious problem which we cannot solve. We have deinstalled Java and Minecraft and reinstalled both and Keep getting the following error message:

Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Users\Tanya Ebbecke\AppData\Roaming\.minecraft\versions\1.8.9\1.8.9-natives-1218511680787\lwjgl64.dll: Zugriff verweigert

               at java.lang.ClassLoader$NativeLibrary.load(Native Method)
               at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
               at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1847)
               at java.lang.Runtime.loadLibrary0(Runtime.java:870)
               at java.lang.System.loadLibrary(System.java:1119)
               at org.lwjgl.Sys$1.run(Sys.java:72)
               at java.security.AccessController.doPrivileged(Native Method)
               at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
               at org.lwjgl.Sys.loadLibrary(Sys.java:87)
               at org.lwjgl.Sys.(Sys.java:117)
               at ave.J(SourceFile:2539)
               at net.minecraft.client.main.Main.main(SourceFile:41)

Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release

Is there anything we can do to get started?

I would greatly appreciate your help if possible.

When I first see this error, I couldn't figure out the exact error message "lwjgl64.dll: Zugriff verweigert". I know that it's "Exception in thread "main" java.lang.UnsatisfiedLinkError" and somehow related to a native library but what is "Zugriff verweigert"? It took me some time that Tanja is from Germany and "Zugriff verweigert" means "Access Denied" (I know my German is bad).



I had experienced this kind of error in the past where a file exists but doesn't have read permission or some program is preventing access to it, so I advised two solutions to Tanja.

Hello Tanja,

It seems Minecraft is not getting the native library it needs to run. 

Zugriff verweigert means I guess "Access Denied", my german is not good :-)

Go to the location "C:\Users\Tanya Ebbecke\AppData\Roaming\.minecraft\versions\1.8.9\1.8.9-natives-1218511680787\lwjgl64.dll" and check if this file is not read-only.

Also, check if your anti-virus is blocking access to this file by running Minecraft after disabling the anti-virus.

let's see if it solves the problem

Cheers
Javin


and miraculously it turned out that his anti-virus is blocking access to the "lwjgl64.dll" native library, which is required by the Minecraft gaming engine.

How to solve Minecraft - java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied error



I was very happy to see the following email the next morning from Tanja

Hello Javin!

You are a star. We turned the anti-virus off and it worked ;-)

Thanks so much for your help!

All the best
Tanja


Since Minecraft is one of the most popular Java games, I expect other people also have similar problems faced in past or will face in the future, and the thought of converting this email to a blog post struck to me. Thankfully, Tanja has no issue with that and here you go, the blog post is here.

By the way, if you are a Java developer and getting java.lang.UnsatisfiedLinkError while dealing with native libraries then you should also check out these Java online courses to learn more about how to use a native library in the Java program.

So, if you are playing Minecraft and not able to start and keep getting "Exception in thread "main" java.lang.UnsatisfiedLinkError:.minecraft\versions\1.8.9\1.8.9-natives-1218511680787\lwjgl64.dll: Access denied" error, even after uninstalling and reinstalling both Java and Minecraft, try running Minecraft after disabling your anti-virus. It could be the antivirus that is blocking access to the "lwjgl64.dll" native library required by the Minecraft game.

Once again big thanks to Tanja for sharing his experience with us. I hope it will certainly help other Minecraft fans.

Other Java Debugging and Troubleshooting Guide to Solve Common Errors

Thanks for reading this article, if this article solves your problem then please share with your friends on social media. If your issue is not solved yet, please drop a note with details. 

1 comment:

  1. Hi Javin
    my error is:

    Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Users\NEXT\AppData\Roaming\.minecraft\versions\1.11\1.11-natives-42797934942680\lwjgl64.dll: %1 no es una aplicación Win32 válida
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1847)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1119)
    at org.lwjgl.Sys$1.run(Sys.java:72)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
    at org.lwjgl.Sys.loadLibrary(Sys.java:87)
    at org.lwjgl.Sys.(Sys.java:117)
    at beq.I(SourceFile:2774)
    at net.minecraft.client.main.Main.main(SourceFile:39)
    Java HotSpot(TM) 64-Bit Server VM warning: Using incremental CMS is deprecated and will likely be removed in a future release

    You can help me?

    thank you

    ReplyDelete