我尝试使用 geomesa-accumulo 摄取 geotiff 数据,但出现以下错误:
WARNING: Failed to load the GDAL native libs. This is not a problem unless you need to use the GDAL plugins: they won't be enabled. java.lang.UnsatisfiedLinkError: no gdaljni in java.library.path
我尝试了以下命令
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
中,我还在java.library.path中添加了'geotools
。我的
java.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
现在,我收到一条新的错误消息
Native library load failed. java.lang.UnsatisfiedLinkError: no gdalalljni in java.library.path Nov 13, 2018 11:11:51 PM it.geosolutions.imageio.gdalframework.GDALUtilities loadGDAL WARNING: Failed to load the GDAL native libs. This is not a problem unless you need to use the GDAL plugins: they won't be enabled. java.lang.UnsatisfiedLinkError: org.gdal.gdal.gdalJNI.AllRegister()V
geomesa
日志文件中仍然没有显示错误。
最佳答案
我认为您需要指向包含 native 库的文件夹,因此在您的情况下/usr/lib/jni/
关于java - 使用 geomesa-accumulo 摄取 GeoTIFF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53275300/