我的本机库存在问题:ogrjni.dll
。
我将ogrjni.dll
放在tomcat/shared/lib
中,并将此目录添加到PATH变量中。但得到错误:
java.lang.NoClassDefFoundError: Could not initialize class org.geotools.data.ogr.OGRDataStore
test.Read.getKadnum(Read.java:56)
和
java.lang.UnsatisfiedLinkError: org.gdal.ogr.ogrJNI.GetDriverCount()I
org.gdal.ogr.ogrJNI.GetDriverCount(Native Method)
org.gdal.ogr.ogr.GetDriverCount(ogr.java:98)
org.geotools.data.ogr.OGRDataStore.<clinit>(OGRDataStore.java:169)
test.Read.getKadnum(Read.java:56)
我怎样才能让它发挥作用?
答案 0 :(得分:1)
您需要设置java.library.path
以包含放置.dll
文件的位置。
请注意,您的.dll
也必须具有与JVM相同的体系结构......也就是说,它们必须是32位或64位,而不是每个都是。
答案 1 :(得分:0)
今天我用tomcat调用cplex时遇到了类似的问题。 只需在ur servlet中添加以下代码即可。
System.load(".../tomcat/shared/lib/ogrjni.dll");
在我的servlet中是:
System.load("D:/Program Files/IBM/ILOG/CPLEX_Studio125/cplex/bin/x64_win64/cplex125.dll");