2012-12-20 47 views
0

我本機庫有問題:ogrjni.dlltomcat中的本地庫

我把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) 

我怎樣才能得到這個工作?

回答

1

您需要設置java.library.path以包含放置.dll文件的位置。

請注意,您的.dll也必須具有與JVM相同的體系結構...也就是說,它們必須都是32位或64位,而不是每個都是其中之一。

0

今天我有類似的問題,當我用tomcat調用cplex時。 只需將下面的代碼添加到您的servlet中即可。

System.load(".../tomcat/shared/lib/ogrjni.dll"); 

在我的servlet是:

System.load("D:/Program Files/IBM/ILOG/CPLEX_Studio125/cplex/bin/x64_win64/cplex125.dll");