2012-04-12 4 views
2

Ich programmiere in Java und neu in jpcap. Ich habe Jpcap für Microsoft Windows installiert. Mein PC läuft auf Windows 7 Plattform. Ich habe eine Eclipse Indigo IDE. Als ich mit der Eclipse Indigo IDE ein neues Java Projekt erstellt habe, habe ich eine Klasse mit einer Hauptmethode erstellt und den Code aus dem jpcap Tutorial kopiert und eingefügt.Programmierung mit Java jpcap auf Eclipse Indigo IDE auf Windows 7 Plattform

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); 
    } 
} 

Auf dem Java-Code-Editor für Eclipse Indigo IDE, sah ich rote Linien für die Network Klasse markiert, die Network Gerät, ein Objekt und deren Attributvariablen.

Wenn ich die Maus über die roten Markierungen, ich diese Fehlermeldung sah, der sagt:

Access restriction: The type NetworkInterface is not accessible due to restriction on required library C:\Windows\Sun\Java\lib\ext\jpcap.jar 

Wenn ich das Java-Programm lief, gab es keine Kompilierungsfehler geworfen und die Java-Konsole konnte den Ausgang zeigen, korrekt. Warum ist das so?? Gibt es eine Möglichkeit, die roten Markierungen im Java-Editor zu entfernen, wenn ich die jpcap-Bibliothek auf der Eclipse Indigo IDE aufruft? Liegt es daran, dass ich winpcap nicht für Windows installiert habe?

Antwort

-1

Versuchen Sie es von NetBeans, und versuchen Sie, die Bibliothek manuell zu importieren, wenn Sie es installieren müssen. jpcap.jar

1

Ich lief genau das gleiche Problem, und es dauerte eine Weile, um die Lösung herauszufinden. Hoffe das hilft.

  1. Sie müssen erkennen, dass Jpcap 32-Bit ist und Sie sind höchstwahrscheinlich die 64-Bit-Version von Eclipse unter Windows 7 laufen Stellen Sie sicher, Sie laufen die 32-Bit-Eclipse-für diese.

  2. Gehen Sie zum Jpcap Download-Bereich und legen Sie die Dateien jpcap-0.6.zip und JPcapSetup-0.6.exe in einen Ordner. Entpacken und ausführen sie.

  3. Kopieren Sie die Jpcap.dll an dem C-Datei: \ Windows \ System32 Ordner

  4. Eclipse starten, ein neues Projekt machen, neues Paket machen, eine neue Klasse machen, den Code schreiben.

  5. Rechtsklick auf den Projektnamen -> Build Path -> Configure Build Path ... -> Java Build Path -> Externe JARs hinzufügen ...

  6. Fügen Sie den jpcap.jar Datei.

  7. Führen Sie Ihr Programm aus.