Sunday, May 29, 2016

Minecraft - java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied 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 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 crash. 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 Java world then I also recommend you go through The Complete Java MasterClass on Udemy 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(
               at java.lang.ClassLoader.loadLibrary(
               at java.lang.Runtime.loadLibrary0(
               at java.lang.System.loadLibrary(
               at org.lwjgl.Sys$
               at Method)
               at org.lwjgl.Sys.doLoadLibrary(
               at org.lwjgl.Sys.loadLibrary(
               at org.lwjgl.Sys.(
               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 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 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 anti-virus.

let's see if it solves the problem


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

How to solve Minecraft - java.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied errorI was very happy to see following email 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

Since Minecraft is one of the most popular Java game, I expect other people also have the similar problem faced in past or will face in future and 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 Java developer and getting java.lang.UnsatisfiedLinkError while dealing with native libraries then you should also check out Core Java for the Impatient to learn more about how to use a native library in Java program.

ava.lang.UnsatisfiedLinkError: lwjgl64.dll : Access Denied error in Minecraft

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 which is blocking access to "lwjgl64.dll" native library required by MineCraft game.

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

Further Learning
Complete Java Masterclass
Java Fundamentals: The Java Language
Java In-Depth: Become a Complete Java Engineer!

1 comment :

Unknown said...

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(
at java.lang.ClassLoader.loadLibrary(
at java.lang.Runtime.loadLibrary0(
at java.lang.System.loadLibrary(
at org.lwjgl.Sys$
at Method)
at org.lwjgl.Sys.doLoadLibrary(
at org.lwjgl.Sys.loadLibrary(
at org.lwjgl.Sys.(
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

Post a Comment