stderr und stdout umleitung bei jython!?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
mulder
User
Beiträge: 49
Registriert: Montag 15. Oktober 2007, 10:36
Wohnort: nürnberg

moin!

also .. ich nutze jython (Jython 2.1 on java (JIT: jitc)) auf unix ..

und wollte in einem script die stderr auf stdout umleiten und die stdout in eine datei schreiben!

Code: Alles auswählen

import sys
sys.stdout = open('/tmp/sysout.out', 'w')
sys.stderr = sys.stdout
unter python 2.5 auf meiner workstation funktiniert das! aber unter jython wird das stderr nicht umgeleitet!

hab ich irgendwas uebersehn? .. oder verhaelt sich da jython anders?

mulder[/code]
" schlimmer als stress ist, keinen zu haben"
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

Ich hab folgendes Skript mit jytoh-2.2.1 unter Windows getestet und es hat funktioniert:

Code: Alles auswählen

import sys

class StdErrException(Exception):
    pass

def test():
    f_sysout = open(r'test.txt', 'w')
    sys.stdout = f_sysout
    print "stdout test"

    sys.stderr = sys.stdout # ist diese Zeile auskommentiert, wird die
                            # Exception auf der Console ausgeworfen
    raise StdErrException("stderr test")

if __name__ == '__main__':
    test()
In der Datei fand ich wie erwartet:

Code: Alles auswählen

stdout test
Traceback (innermost last):
  File "test.py", line 14, in ?
  File "test.py", line 11, in test
StdErrException: stderr test
Ich schmeiss mal jython auf eins meiner *nix Systeme ... aber es würde mich wundern, wenn es sich dort anders verhalten würde.

>>Masaru<<
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

Mit jython-2.2.1 und selbigem Skript hat es nun ebenfalls unter SuSe Linux 9 geklappt.

EDIT:
Und auf einer HP-UX Maschine hat es auch wunderbar und ohne Schwierigkeiten geklappt.

Ich kann leider das bei Dir beobachtete Verhalten nicht reproduzieren :?
Bei einer regulären jython-Installation "sollte" es "eigentlich" funktionieren.

>>Masaru<<
Benutzeravatar
mkesper
User
Beiträge: 919
Registriert: Montag 20. November 2006, 15:48
Wohnort: formerly known as mkallas
Kontaktdaten:

mulder hat geschrieben:moin!

also .. ich nutze jython (Jython 2.1 on java (JIT: jitc)) auf unix ..
Diese Version ist mittlerweile längst überholt, vielleicht liegt es daran.
mulder
User
Beiträge: 49
Registriert: Montag 15. Oktober 2007, 10:36
Wohnort: nürnberg

danke! ..

@mkallas: ich kanns nicht updaten .. da es zu websphere gehoert!

@masaru: ich hab "deine loesung" bei mir (aix) getestet .. und es geht auch nicht! :lol: also schiebe ich es auf die jython implementierung im websphere

danke
" schlimmer als stress ist, keinen zu haben"
Antworten