Страница 1 из 1

ogrjni.dll: Can't find dependent libraries

Добавлено: 08 апр 2012, 17:07
kliver
Здравствуйте

Помогите подключить gdal/ogr в NetBeans. Пытаюсь скомпилировать проект, и выдается такую ошибку.

Код: Выделить всё

Native library load failed.
java.lang.UnsatisfiedLinkError: D:\Beans\ogr_test\lib\gdal\ogrjni.dll: Can't find dependent libraries
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.gdal.ogr.ogrJNI.GetDriverCount()I
	at org.gdal.ogr.ogrJNI.GetDriverCount(Native Method)
	at org.gdal.ogr.ogr.GetDriverCount(ogr.java:98)
	at org.geotools.data.ogr.OGRDataStore.<clinit>(OGRDataStore.java:169)
	at ogr_test.Read.main(Read.java:55)
В свойствах проекта я указываю следующие параметры.
Аргументы: -cp "gdal.jar"
Параметры VM : -Djava.library.path="D:\Beans\ogr_test\lib\gdal"
Параметры обработчика : Path : "D:\Beans\ogr_test\lib\gdal"

Еще один вопрос. Если хочу создать веб приложение то как к нему подлючать гдал? Нужно где то в томкате прописыать путь к библиотеке?

Re: ogrjni.dll: Can't find dependent libraries

Добавлено: 08 апр 2012, 18:28
Дмитрий Барышников
Посмотрите от чего зависит D:\Beans\ogr_test\lib\gdal\ogrjni.dll
Программа Dependency Walker (http://www.dependencywalker.com/)

Re: ogrjni.dll: Can't find dependent libraries

Добавлено: 08 апр 2012, 19:41
kliver
Так, ну с простым Ява приложением я разобрался (Нужно было еще указать в параметре Рабочая папка путь к гдалу).
Теперь осталось с веб приложением. Положил в папку tomcat\lib файлы gdal.jre и ogrjni.dll, но не знаю стоило ли. Пытаюсь скомпилировать и выдает.

Код: Выделить всё

08.04.2012 20:39:39 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [Upload_File] in context with path [/test] threw exception [Servlet execution threw an exception] with root cause
java.lang.NoClassDefFoundError: Could not initialize class org.geotools.data.ogr.OGRDataStore
	at test.Read.ReadFile(Read.java:54)
	at test.uploadfile.doPost(uploadfile.java:104)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:304)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)