Process output

Status
Nicht offen für weitere Antworten.

Campino

Top Contributor
Code:
Runtime runtime=Runtime.getRuntime();
		
		try{
			Process p=runtime.exec("java -help");
			BufferedReader bs=new BufferedReader(new InputStreamReader(p.getInputStream()));		
			String line;
			while((line=bs.readLine())!=null){
				System.out.println(line);
			}
		}catch(IOException e){
			System.out.println(e.toString());
		}

liefert die erwartete Ausgabe, aber wenn ich das -help gegen -version ersetze, kommt gar keine Ausgabe mehr. Wenn ich java -version in der Konsole eingebe, kommt erwartungsgemäß die Java-Versionsnummer und so. Warum liefert das Programm dann keine Ausgabe...
 

Wildcard

Top Contributor
Hab dein Prog jetzt nicht getestet, aber warum nicht einfach so:
Code:
System.getProperty("java.vm.version")
 

Sky

Top Contributor
Habe gerade mal was probiert und was merkwürdiges raugefunden:
Code:
try {
  Process p = runtime.exec( "java -version" );
  String line;
  BufferedReader bs;

  // Input-Stream
  System.out.println("<Input>");
  bs = new BufferedReader( new InputStreamReader( p.getInputStream() ) );
  while( ( line = bs.readLine() ) != null ) {
    System.out.println( line );
  }
  System.out.println("</Input>");

  // Error-Stream
  System.out.println("<Error>");
  bs = new BufferedReader( new InputStreamReader( p.getErrorStream() ) );
  while( ( line = bs.readLine() ) != null ) {
    System.out.println( line );
  }
  System.out.println("</Error>");
} catch( IOException e ) {
  System.out.println( e.toString() );
}

Probiers mal aus und staune; sobald Du es verstanden hast, warum es so ist, bitte bei mir melden :)
 

meez

Top Contributor
Das ist halt weil das eben kein "normaler" Output eines Programmes ist, sondern ein speziell Angeforederter...Da halt nur zwei Streams vorhanden sind, wirds halt auf stderr geschrieben (Was aber nicht heisst, dass es als Error angesehen werden muss)....
 

Sky

Top Contributor
meez hat gesagt.:
Das ist halt weil das eben kein "normaler" Output eines Programmes ist, ....

HÄ? Muss ich das verstehen??

"-help" ist somit "normaler" Output (da INPUT) und "-version" ist kein normaler Output (da ERROR)?
Ich würde aber die beiden Ausgaben gleich setzen; d.h. wenn "-version" ein speziell Angeforederter Output ist, so gilt dies doch wohl auch für "-help"!?
 

meez

Top Contributor
sky80 hat gesagt.:
"-help" ist somit "normaler" Output (da INPUT) und "-version" ist kein normaler Output (da ERROR)?
Ich würde aber die beiden Ausgaben gleich setzen; d.h. wenn "-version" ein speziell Angeforederter Output ist, so gilt dies doch wohl auch für "-help"!?

Nein...Wenn help auftaucht, läuft das Program sowieso nicht weiter...Bei Version kann es auch -showversion sein, d.h. man trennt einfach die "normalen" Ausgaben des Programmes und der VM...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Compiler-Fehler child process exited with code 1 Allgemeine Java-Themen 1
K Threads Runtime und Process Probleme Allgemeine Java-Themen 3
P Herausfinden, ob ein Process ein Fenster hat Allgemeine Java-Themen 1
D Java Process OutputStream ist null Allgemeine Java-Themen 4
X Problem bei process.start() ExitValue Allgemeine Java-Themen 5
T Mit Java auf die Konsole eines Process-Objekts zugreifen Allgemeine Java-Themen 10
P Input/Output Process.getErrorStream = OutputStream Allgemeine Java-Themen 11
J Download: Filename + Process waitFor() Allgemeine Java-Themen 5
S Wie beendet man einen Process in Java Platform unabhänging? Allgemeine Java-Themen 8
M Process wird gestoppt und nach beenden der Anwendung fortgeführt Allgemeine Java-Themen 4
G Process.destory() == CTRL+C Allgemeine Java-Themen 2
P Swing GUI Process anzeigen Allgemeine Java-Themen 10
F Process.getInputStream unter Linux Allgemeine Java-Themen 7
schlingel Process - Ausgabe leer Allgemeine Java-Themen 5
G ungepufferter Process.getInputStream Allgemeine Java-Themen 10
J Process beenden ...aber wie ? Allgemeine Java-Themen 19
G Process - mehrere Commands?! Allgemeine Java-Themen 2
MQue auf gestarteten Process warten Allgemeine Java-Themen 7
G Process.wait() auf Folgeprozesse mitwarten Allgemeine Java-Themen 29
P Bedeutung der Process.exitValue() Werte? Allgemeine Java-Themen 3
J Process auf Console anzeigen lassen. Allgemeine Java-Themen 5
S Process - Befehle senden Allgemeine Java-Themen 13
B Process Builder Allgemeine Java-Themen 10
D Thread & Process: Beenden einer Batch-Datei Allgemeine Java-Themen 8
J process.getInputStream() hängt auf merkwürdige Art und Weise Allgemeine Java-Themen 7
D Fremdes Programm schließen (ohne process.destroy()) Allgemeine Java-Themen 8
S process.waitFor() endet mit -1 Allgemeine Java-Themen 3
M Process -> getInputStream -> nur gepuffert ? Allgemeine Java-Themen 12
A Runtime Process bricht nicht ab! Allgemeine Java-Themen 7
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
Tobero Batch Vorgang zum output Allgemeine Java-Themen 3
B In Java Methode mit generic input und output basteln? Allgemeine Java-Themen 4
X Output von ArrayList Allgemeine Java-Themen 3
S Gradle "schluckt" output und error Allgemeine Java-Themen 1
S Unerwarteter Output (kleines Raetsel) Allgemeine Java-Themen 6
TheWhiteShadow 2D-Grafik GIF Library mit byte output Allgemeine Java-Themen 10
J Java Sound Api Sound input und Output auswählen Allgemeine Java-Themen 4
T ProcessBuilder Output Allgemeine Java-Themen 12
T Threads Input/Output im Thread - Datei ohne Inhalt Allgemeine Java-Themen 1
M Output einer anderen/externen .jar in eigene JTextArea Allgemeine Java-Themen 4
B Input/Output Server Startet, Jedoch Kein Output. Allgemeine Java-Themen 1
N Kalender Normen input/output Allgemeine Java-Themen 2
B Best Practice HTML Output Optimal implementieren Allgemeine Java-Themen 3
H Input/Output Binäre Daten konvertieren, Output hat Zeilenumbrüche?? Allgemeine Java-Themen 9
G LayoutManager Launch4j: Launcher startet nur in Output Directory Allgemeine Java-Themen 4
G Swing JEditorPaneAppender (Output im HTML-Format) Allgemeine Java-Themen 12
H Binary File Output Allgemeine Java-Themen 15
G Output eines über Runtime.getRuntime.exec gestarteten Jars Allgemeine Java-Themen 6
W In Runtime Output schreiben Allgemeine Java-Themen 5
O Output From Java Creator? Allgemeine Java-Themen 3
J Threads + Dualcore = Probleme mit dem Output auf der Konsole Allgemeine Java-Themen 12
R InputStream - seltsamer Output Allgemeine Java-Themen 2
N IOException: "Reading from an output buffer" ? Allgemeine Java-Themen 2
K Output eines Runtimes Allgemeine Java-Themen 2
M Output Stream / Protokoll does not support output Allgemeine Java-Themen 2
J Output Stream Allgemeine Java-Themen 4

Ähnliche Java Themen


Oben