The CPLEX Java API is a wrapper around the native Callable C library. Are you saying that you've included cplex125.dll in your jar file on Windows? And this works if you move your jar file to a Windows machine with no CPLEX installed? I can't say I've tried this or heard of someone trying this (embedding the .dll file inside of the jar), but it sounds plausible (looks like a question like this was on stackoverflow). On Linux, you'd need the cplex125.so (shared library) file. You'd need the equivalent on every platform you want to deploy on. Even on Windows, you're picking a particular platform (e.g., VS2012 64-bit, VS2013 32-bit, etc.) where it assumes certain C++ runtimes are installed, etc.
EDIT 1: You can certainly deploy only what is needed for each platform. It is not required that each machine has a full-blown CPLEX Optimization Studio installed.
EDIT 2: 12.5 is pretty old at this point. You might want to upgrade to the most recent version.
Hope that helps
#CPLEXOptimizers#DecisionOptimization