Java JNA перенаправляет вывод в логгер - PullRequest
2 голосов
/ 26 марта 2011

Я обращаюсь к OpenCV через JNA, когда мои процессы занимают слишком много времени, и процесс opencv выводит сообщение «Camera drop frame». Моя проблема в том, что он выдает слишком много сообщений, что делает консоль бесполезной для моих целей регистрации. Ниже код поиска Google показывает, что он напечатан для cout,

http://www.google.com/codesearch?hl=en&lr=&q=%22camera+dropped+frame%21%22&sbtn=Search

Я пытался перенаправить оба сообщения и ошибки в свои журналы, но я все еще получаю сообщения, напечатанные на консоли, есть ли способ избавиться от них


      (System/setOut (proxy [java.io.PrintStream] [System/out] 
                       (print [s] ;;(trace s)
                              )
                       (println [s] ;;(trace s)
                                )
                       ))

      (System/setErr (proxy [java.io.PrintStream] [System/err] 
                       (print [s] ;;(trace s)
                              )
                       (println [s] ;;(trace s)
                                )
                       ))

1 Ответ

0 голосов
/ 27 марта 2011

Учитывая, что вы используете JNA для общения с OpenCV, что, вероятно, подразумевает для меня, что OpenCV - это нечто родное и, возможно, даже не подозревающее о java.Следующий вопрос - у него нет java API, почему он пытается печатать сообщения, используя System.out?Вероятно, он вызывает операционную систему точно так же, как это делает стандартный System.out для вывода текста на консоль.

...