windows上java调用gdal.jar报错
Native library load failed.
java.lang.UnsatisfiedLinkError: no gdalalljni in java.library.path
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.gdal.gdal.gdalJNI.AllRegister()V
GDAL的Dll都在如下目录:
d:/release-1900-x64-gdal-3-1-2-mapserver-7-6-1/bin
GDAL需要的JNI DLL在如下目录:
d:/release-1900-x64-gdal-3-1-2-mapserver-7-6-1/bin/gdal/java
方法一,
在【我的电脑】,【环境变量】,【path】增加dll相关路径。
方法二,
把以上目录下dll复制到使用的JDK版本%JAVA_HOME%/jre/bin/目录下;
方法三,
把以上目录下dll复制到system32目录下
方法四,
在代码中设置:java.library.path
System.out.println( System.getProperty("java.library.path"));
System.setProperty("java.library.path", System.getProperty("java.library.path")+";d:xxxx");
Windows环境下Java调用GDAL库失败的解决办法

这篇博客介绍了在Windows上使用Java调用GDAL库时遇到的 UnsatisfiedLinkError 错误,以及四种可能的解决方案。包括修改环境变量PATH,将DLL复制到JDK的jre/bin目录,复制到system32目录,以及通过代码设置java.library.path。这些方法旨在确保GDAL的DLL和JNIDLL能够被Java正确加载。
5920






