LibGDX Native Libraries

This is probably a dumb question, but it’s been bugging me for a while.

I can successfully deploy a LWJGL game by adding its natives to my native library path when I run the jar using the -Djava.library.path argument. That works great.

I can also successfully deploy a libGDX game just be exporting a runnable jar. That also works great. My question is… why does that work? Why don’t I have to set the native library path when I run the libGDX jar? LibGDX is built on top of LWJGL, so shouldn’t it require the same native libraries? Does libGDX extract them automagically?

Again, I know how to get both LWJGL and libGDX working, my only question is why I don’t seem to have to set the native library path with libGDX, even though LWJGL requires it. I suspect some witchcraft going on, and I’m just curious what that witchcraft is.

(Or maybe my assumptions are invalid and my runnable jar approach has only worked coincidentally and isn’t what I should actually be doing?)