1.背景
Java调用开源GDAL解析dxf成shp,再调用开源GeoTools解析shp文件,在部署完成后调用解析方法报错
UnsatisfiedLinkError: org.gdal.ogr.ogrJNI.RegisterAll()V
Handler dispatch failed; nested exception is java.lang.UnsatisfiedLinkError: org.gdal.ogr.ogrJNI.RegisterAll()V
能确认位置GDAL
D:\softs\gdal\release-1928-x64\bin目录下所有的dll扩展名文件 和 D:\softs\gdal\release-1928-x64\bin\gdal\java\gdalalljni.dll 都拷贝到 jdk/bin目录下,但是还是报错
2.原因分析:
这种报错在原有的机器上安装就不会报错,在新的服务器上安装,调用就会报错,后面排查变量的配置,发现新的服务器没有配置JAVA_HOME和path路径中没有加入JAVA_HOME的路径导致的
加入JAVA_HOME的变量已及jdk的安装位置
JAVA_HOME
C:\Program Files\Java\jdk1.8.0_102
Path中加上JAVA_HOME的路径
%JAVA_HOME%/bin
%JAVA_HOME%/jre/bin