我有一个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)我已经通过eclipse实现了jar文件。
我几乎检查过所有的东西了。应该存在路径问题或类似的问题。谁能帮助熟悉jpcap/winpcap的人?
提前谢谢..
发布于 2011-07-18 06:09:14
jpcap.jar不是Java扩展,不应该在lib/ext中。它应该在类路径中的其他位置。DLL不是Windows的一部分,也不应该在Windows\system32中:它应该位于您路径中的其他位置。Winpcap应该安装到任何位置。正如g051051所说,检查以前版本的卸载。
发布于 2018-07-23 22:28:48
对我来说,问题出在从sorceforge下载的jpcap-0.01.16-win32版本的jpcap.dll上。我找到一个jpcapSetup-0.7.exe.zip安装程序,它在system32文件夹中安装了正确的动态链接库。
我的windows机器是32位的,jvm是32位的,但是jpcap仍然有问题。
我还了解到,如果我将安装程序生成的dll复制到另一个目录并卸载jpcap安装程序应用程序,然后将该dll放入任何java_library_path中,jpcap就可以工作。这意味着jpcap-0.01.16-win32下载附带的dll是有问题的那个。
注意:请确保已安装Winpcap_4_1_3.exe。如果没有安装,你会得到一个“无法找到依赖库异常”。
确保正确的jpcap.dll位于javapath环境中的某个文件夹中,或者位于与程序可执行文件或program.jar相同的目录中。如果没有找到,你会得到"No jpcap in java.library.path“异常。
https://stackoverflow.com/questions/6723955
复制相似问题