[英]Programming with Java jpcap on Eclipse Indigo IDE on Windows 7 platform
我正在用Java编程,并且是jpcap的新手。 我已经为Microsoft Windows安装了Jpcap。 我的电脑在Windows 7平台上运行。 我有一个Eclipse Indigo IDE。 当我使用Eclipse Indigo IDE创建一个新的Java Project时,我创建了一个具有main方法的类,并复制并粘贴了jpcap教程中的代码。
package PacketCapturing;
import jpcap.*;
import jpcap.packet.*;
public class NetworkInterfaceList {
public static void main(String args[]){
//Obtain the list of network interfaces
NetworkInterface[] devices = JpcapCaptor.getDeviceList();
//for each network interface
for (int i = 0; i < devices.length; i++) {
//print out its name and description
System.out.println(i+": "+devices[i].name + "(" + devices[i].description+")");
//print out its datalink name and description
System.out.println(" datalink: "+devices[i].datalink_name + "(" + devices[i].datalink_description+")");
//print out its MAC address
System.out.print(" MAC address:");
for (byte b : devices[i].mac_address)
System.out.print(Integer.toHexString(b&0xff) + ":");
System.out.println();
//print out its IP address, subnet mask and broadcast address
for (NetworkInterfaceAddress a : devices[i].addresses)
System.out.println(" address:"+a.address + " " + a.subnet + " "+ a.broadcast);
}
}
在用于Eclipse Indigo IDE的Java代码编辑器上,我看到为NetworkInterface类,NetworkInterface设备,对象及其属性变量标记的红线。
当我将鼠标悬停在红色标记上时,看到以下错误消息:
Access restriction: The type NetworkInterface is not accessible due to restriction on required library C:\Windows\Sun\Java\lib\ext\jpcap.jar
当我运行Java程序时,没有引发编译错误,并且Java控制台能够正确显示输出。 为什么会这样?? 每当我在Eclipse Indigo IDE上调用jpcap库时,是否可以删除Java编辑器上的红色标记? 是因为我没有为Windows安装Winpcap吗?
我遇到了完全相同的问题,花了我一段时间才找到解决方案。 希望这可以帮助。
您必须认识到Jpcap是32位的,并且很有可能在Windows 7上运行Eclipse的64位版本。请确保为此运行32位Eclipse。
转到Jpcap下载部分,然后将jpcap-0.6.zip和JPcapSetup-0.6.exe文件放在一个文件夹中。 解压缩并执行它们。
将Jpcap.dll文件复制到C:\\ Windows \\ System32文件夹
启动Eclipse,创建一个新项目,创建一个新程序包,创建一个新类,编写代码。
右键单击项目名称->构建路径->配置构建路径...-> Java构建路径->添加外部JAR ...
添加jpcap.jar文件。
运行程序。
从NetBeans尝试使用它,如果需要安装,请尝试手动导入该库。 jpcap.jar
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.