You can use System.setOut , for example:
>>> from java.lang import System >>> from java.io import PrintStream, OutputStream >>> oldOut = System.out >>> class NoOutputStream(OutputStream): ... def write(self, b, off, len): pass ... >>> System.setOut(PrintStream(NoOutputStream())) >>> System.out.println('foo') >>> System.setOut(oldOut) >>> System.out.println('foo') foo
Note that this will not affect Python output, as Jython captures System.out when it starts, so you can reassign sys.stdout as you would expect.
Nicholas iley
source share