2016-09-09 5 views
0

Ich versuche, meine JAR-Datei auf einem Debian in einer Konsole zu starten. Es wird 5 Parameter, die wie folgt aussehen wird in der folgenden Frieden von Code dargestellt:Jar-Dateien mit Parametern und Klassenpfadvariable

 if (args.length!=5) { 
     System.out.println("Usage: java popscan.Waterflood" 
         + " [source image filename]" 
         + " [destination image filename]" 
         + " [flood point count (1-256)]" 
         + " [minimums window width (8-256)]" 
         + " [connected pixels (4 or 8)]" 
         ); 
     return; 
    } 

Ein anderer Teil ist, dass es den Klassenpfad zu einer externen Bibliothek erfordert in diesem Fall die OpenCV ist.

Meine Frage ist, wie man es richtig startet. Ich habe versucht, ein paar Kombinationen wie:

Benutzer @ Server: ~/Waterflood $ java -jar WaterFlood.jar 1.png 1res.png 2 8 8 -cp ~/opencv/installiert opencv 3.1/opencv-3.1.0/Aufbau/bin/opencv-310.jar

Aber ich bekomme immer die Meldung:

Usage: java popscan.Watershed [source image filename] [destination image filename] [flood point count (1-256)] [minimums window width (8-256)] [connected pixels (4 or 8)] 

Vielen Dank für alle Ideen

Antwort

1

Verschieben -cp ...jar direkt nach Java. Es ist kein Argument für das Programm, es ist für die Java Virtual Machine.

java -cp "~/opencv/installed opencv 3.1/opencv-3.1.0/build/bin/opencv-310.jar" -jar WaterFlood.jar 1.png 1res.png 2 8 8 
+0

Ja, aber dann bekomme ich: –

+0

Vor dem -jar: „Fehler konnte nicht Hauptklasse opencv finden oder laden“, aktualisiert die Antwort –

+0

Sie sind wahrscheinlich auch von diesen Räumen bittne bekommen, stellen Sie sicher, dass Sie umschließen das Argument mit '" –