在Java中,有没有办法查询当前平台的动态库文件扩展名仅使用JDK或javax库?例如,定义的系统属性?
作为次要替代方案,是否有第三方 Java 库可以执行此操作?
作为第三种替代方案,问题是否如此微不足道,我可以轻松地推出自己的解决方案(例如 Windows 上的 .dll,其他地方的 .so)?
最佳答案
您或许可以使用以下 API 获得您正在寻找的内容:
System.mapLibraryName("your_library");
在 Linux 上,返回值为“libyour_library.so”,在 Windows 上,返回值为“your_library.dll”。因此,如果您只对扩展感兴趣,您可以执行以下操作:
final String libname = System.mapLibraryName("test");
final String libext = libname.substring(libname.lastIndexOf('.')+1);
关于java - 从 Java 获取 native 动态库文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25064959/