Come to think of it, though I've yet to try this, you should be able to include .DLLs as resources into your class, write them out at runtime and then load those JNI libraries with with the System.loadLibrary( "MY-LIB.DLL") call. This would do away with some of the deployment problems with JNI code, as expressed in Java bug 4414763 [11] which according to Sun is actually a feature.