2017-10-31 6 views
0

Kann mir jemand helfen, wie man einen gpg Verschlüsselungsbefehl von einem Java-Programm mit Runtime.getRuntime() .exec() ausführt?Laufender Befehl für Linux von der Java Laufzeit

Beispielbefehl, die ich weiter unten laufen wollte:

gpg -u 'receipient' -r KeyID --armor --output /home/myuser/tmp/check.pgp --sign - Passwort ' & sw @ 217' --batch --encrypt /home/myuser/tmp/check.txt*

Wenn ich versuche, das von meinem Java-Programm auszuführen, es Fehler wie „usage gibt: gpg [Optionen ] [Dateiname] "

Bitte helfen Sie bei der Lösung dieses Fehlers und führen Sie die oben genannten gpg c ommand aus einem Java-Programm.

+1

Welchen Code haben Sie ausprobiert? Hast du den Befehl selbst getestet? – phflack

+1

und wo ist dein Code? – johnII

+0

Laufzeit.exec ist veraltet. Verwenden Sie [ProcessBuilder] (https://docs.oracle.com/javase/9/docs/api/java/lang/ProcessBuilder.html). Außerdem kann niemand Ihren Code beheben, wenn Sie Ihren Code nicht in Ihrer Frage anzeigen. – VGR

Antwort

0

Der folgende Code sollte Ihr Problem lösen, wenn die Binärdatei gpg korrekt auf Ihrem Host installiert ist.

Ich habe nicht die richtigen Einstellungen, aber dieser Code läuft wie erwartet. Sie können es hier versuchen: https://tech.io/snippet/VzJtME0

+0

Danke Frédéric ... – Ramchander