Die Standardausgabe Stdout des Node.js child_process exec ist kurz geschnitten

In Node.js ich bin mit dem exec-Befehl, der child_process-Modul aufrufen, einen Algorithmus in Java, gibt eine große Menge von text auf standard heraus, welche ich dann analysieren und zu verwenden. Ich bin in der Lage zu erfassen, ist es meist, aber wenn es über eine bestimmte Anzahl von Zeilen, der Inhalt ist cutoff.

exec("sh target/bin/solver "+fields.dimx+" "+fields.dimy, function(error, stdout, stderr){
    //do stuff with stdout
}

Ich habe versucht, mit setTimeouts und Rückrufe aber noch nicht gelungen, aber ich habe das Gefühl, dies geschieht, weil ich bin Referenzierung stdout in meinem code ein, bevor Sie abgerufen werden können, vollständig. Ich habe getestet, dass stdout ist in der Tat-wo der Verlust von Daten zuerst Eintritt. Es ist nicht ein asynchron-Problem weiter unten auf der Linie. Ich habe auch getestet, die auf meinem lokalen Rechner und Heroku, und das exakt gleiche Problem tritt auf, abschneiden an der exakt gleichen Zeilennummer zu jeder Zeit.

Irgendwelche Ideen oder Vorschläge, was helfen könnte?

InformationsquelleAutor Alex H Hadik | 2014-01-17

Schreibe einen Kommentar