Я вызываю код в jar-файле, используя jpype в python. Код Java печатает кучу выходных данных в stdout, который я хотел бы просто перенаправить в / dev / null. Как бы я это сделал? Я не могу изменить код Java (так как это внешний проект).
Вот мой код Python:
import jpype
import jpype.imports
jpype.startJVM(jpype.getDefaultJVMPath(), '-Djava.class.path=%s' % astral)
jpype.imports.registerDomain('phylonet')
from phylonet.coalescent import CommandLine
CommandLine.main(['-i', input_file, '-o', output_file])
jpype.shutdownJVM()
К счастью, я могу перенаправить нужный мне вывод в файл, но я все равно получаю много нежелательного вывода прямо в stdout. Я вызываю несколько экземпляров в пуле процессов, поэтому получаю искаженный вывод из нескольких экземпляров кода Java.