只管根据库名加载动态链接库的话:
先说下jni,jni加载动态链接库只会从JVM系统属性java.library.path所设置的路径去取,而windows、linux、mac下这个变量默认值是不一样的,如果要自定义路径,在windows中最简单,在PATH中追加即可,而mac以及linux就没有这么简单了,原本也可以通过设置系统变量如LD_LIBRARY_PATH来向java.library.path追加路径,但在某些系统已经把该变量给废弃了,所以mac和linux建议通过-Djava.library.path=xxx来设置自定义库路径。
JNA的话,默认从系统库中去查找,windows下跟JNI一样,PATH中追加即可。而在linux和mac下需要通过-Djna.library.path=xxx来配置,当然你也可以设置成全局库,以ubuntu为例:新建文件 /etc/ld.so.conf.d/xxx.conf, xxx.conf添加自定义库路径,最后运行命令 sudo ldconfig即可。
这样设置的话,就不需要关心开发工具的影响。