【发布时间】:2018-11-13 06:47:46
【问题描述】:
我正在尝试使用 geomesa-accumulo 摄取 geotiff 数据,但出现以下错误:
警告:无法加载 GDAL 本机库。除非您需要使用 GDAL 插件,否则这不是问题:它们不会被启用。 java.lang.UnsatisfiedLinkError: java.library.path 中没有 gdaljni
我尝试了以下命令
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/libgdal.so
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/jni/libgdaljni.so
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/test/Project/2.0.2-geomesa/geotools/
添加后,我使用以下命令验证了库路径中的所有内容是否正确
java -XshowSettings:properties
我在编译gdal-2.3.0 源文件后创建了gdal.jar 文件,我在java.library.path 中添加了该文件,我还添加了'geotoolsinjava.library.path. Myjava.library.path` 看起来如下
java.library.path =
/usr/lib/jni/libgdaljni.so
/usr/lib/
/usr/lib/libgdal.so
/usr/java/packages/lib/amd64
/usr/lib64
/lib64
/lib
/usr/lib
/usr/local/lib/gdal
/home/test/Project/2.0.2-geomesa/geotools/
请帮助我解决显示的警告。非常感谢任何帮助。
更新
正如@Emilio 建议的那样,我尝试将/usr/lib/jni/ 与之前的命令一起添加。我的更新命令如下。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/jni/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/test/Project/2.0.2-geomesa/geotools/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/libgdal.so
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/jni/libgdaljni.so
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/gdal
我更新的java.library.path如下图。
java.library.path =
/usr/lib/jni/
/usr/lib/
/home/test/Project/2.0.2-geomesa/geotools/
/usr/lib/libgdal.so
/usr/lib/
/usr/lib/jni/libgdaljni.so
/usr/local/lib/gdal
/usr/java/packages/lib/amd64
/usr/lib64
/lib64
/lib
/usr/lib
现在,我收到一条新的错误消息
本机库加载失败。 java.lang.UnsatisfiedLinkError:否 java.library.path 中的 gdalalljni 2018 年 11 月 13 日晚上 11:11:51 it.geosolutions.imageio.gdalframework.GDALUtilities loadGDAL 警告: 无法加载 GDAL 本机库。这不是问题,除非你 需要使用 GDAL 插件:它们不会被启用。 java.lang.UnsatisfiedLinkError: org.gdal.gdal.gdalJNI.AllRegister()V
geomesa 日志文件中仍然没有显示错误。
【问题讨论】:
标签: java gdal geoserver geotools geomesa