java jpcap java.lang.UnsatisfiedLinkError - PullRequest
1 голос
/ 17 июля 2011

У меня проблема с jpcap и winpcap.Раньше я запускал его, но я не знаю, что происходит сейчас.Я установил winpcap и скачал jpcap.При первом запуске примера кода я получил следующую ошибку.

PacketCapture: loading native library jpcap.. ok
Exception in thread "main" java.lang.UnsatisfiedLinkError: net.sourceforge.jpcap.capture.PacketCapture.findDevice()Ljava/lang/String;
    at net.sourceforge.jpcap.capture.PacketCapture.findDevice(Native Method)
    at com.oz.test.Example1.<init>(Example1.java:38)
    at com.oz.test.Example1.main(Example1.java:55)

Чтобы облегчить задачу тем, кто готов помочь,

1) Я проверил, что jpcap.dll находится в папке windows, system32 (я должен проверить, зарегистрирована ли она?)

2) jpcap.jar находится в C: \ WINDOWS \ Sun \ Java \ lib \ ext.jpcap поместил его в эту папку автоматически, я не выбрал его.(но мой java работает из C: \ Program Files \ Java \ jdk1.6.0_18)

3) Я реализовал файл jar через eclipse.

Я почти все проверилТам должно быть проблема пути или что-то подобное.Кто-нибудь может помочь, кто знаком с jpcap / winpcap?

Заранее спасибо ..

Ответы [ 2 ]

0 голосов
/ 23 июля 2018

Для меня проблема была с версией jpcap.dll, которая шла с загрузкой jpcap-0.01.16-win32 от sorceforge.Я нашел установщик jpcapSetup-0.7.exe.zip, который установил правильный dll в папку system32.

Мой компьютер с Windows был 32-битным, 32-битным jvm, но я все еще получал проблемы с jpcap

Я такжеузнал, что если я скопирую dll, созданную установщиком, в другой каталог и удалю это приложение установщика jpcap, а затем поместлю эту dll в любой java_library_path, jpcap будет работать.это означает, что DLL, которая поставляется с jpcap-0.01.16-win32, является той, с которой возникла проблема.

Примечание. Убедитесь, что установлен Winpcap_4_1_3.exe.Если он не установлен, вы получите «Не удается найти исключение для зависимых библиотек».

Убедитесь, что нужный файл jpcap.dll находится в одной из папок в среде javapath или находится в том же каталоге, что и исполняемая программа вашей программы или program.jar.,Если он не найден, вы получите исключение «No jpcap in java.library.path».

Загрузить установщик jpcap здесь Загрузить Winpcap можно загрузить с здесь

0 голосов
/ 18 июля 2011

jpcap.jar не является расширением Java и не должно быть в lib / ext.Это должно быть где-то еще на вашем пути к классам.DLL не является частью Windows и не должна быть в Windows \ system32: она должна быть где-то еще в вашей переменной PATH.Winpcap должен идти куда угодно.И как говорит g051051, проверьте удаление предыдущих версий.

...