JpcapCaptor.getDeviceList()返回一个空数组

时间:2013-02-18 08:03:59

标签: java linux networking network-programming jpcap

我是Jpcap的新手。我正在使用

NetworkInterface[] arr=JpcapCaptor.getDeviceList();
System.out.println(arr.length);

从Jpcap获取设备。但它返回一个空数组。当我打印数组的长度时,它是0.我使用ubuntu 11.10并使用sudo apt-get install libpcap-dev安装了libpcap。我的classpath中有jpcap.jar。我不明白为什么我没有得到任何网络设备。有人可以帮助我。

编辑: 当我在终端中运行ifconfig时,我得到了这个输出。

  

eth0链接封装:以太网HWaddr 18:a9:05:cb:8d:fb
            UP BROADCAST MULTICAST MTU:1500公制:1             RX数据包:0错误:0丢弃:0超限:0帧:0             TX数据包:0错误:0丢弃:0溢出:0载波:0             碰撞:0 txqueuelen:1000             RX字节:0(0.0 B)TX字节:0(0.0 B)             中断:17

     

lo link encap:Local Loopback
            inet addr:127.0.0.1掩码:255.0.0.0             inet6 addr::: 1/128范围:主机             UP LOOPBACK RUNNING MTU:16436公制:1             RX数据包:758错误:0丢弃:0超限:0帧:0             TX数据包:758错误:0丢弃:0超出:0载波:0             碰撞:0 txqueuelen:0             RX字节:27296(27.2 KB)TX字节:27296(27.2 KB)

     

wlan0链接封装:以太网HWaddr 00:26:c6:14:6c:68
            inet addr:192.168.2.55 Bcast:192.168.3.255掩码:255.255.252.0             inet6 addr:fe80 :: 226:c6ff:fe14:6c68 / 64范围:链接             UP BROADCAST RUNNING MULTICAST MTU:1500公制:1             RX数据包:11385错误:0丢弃:0超限:0帧:0             TX数据包:6088错误:0丢弃:0溢出:0载波:0             碰撞:0 txqueuelen:1000             RX字节:4582447(4.5 MB)TX字节:1203113(1.2 MB)

1 个答案:

答案 0 :(得分:2)

当我在Ubuntu 11.10和netbeans中运行时遇到了问题。当我尝试使用终端运行jar文件(具有sudo权限)时,它工作。我认为问题在于linux中的权限。

在终端sudo java -jar YourJarFile.jar中运行.jar文件可以解决问题。