Есть ли способ напечатать трассировку стека на экране в Java ME? - PullRequest
4 голосов
/ 02 декабря 2008

У меня есть код, который выглядит следующим образом, который отлично работает для отображения сообщения, но не может найти способ удержать трассировку стека.

try {
    throw new RuntimeException("This is bad stuff!");
} catch (Exception e ) {
    mainForm.append("Exception: " + e.getMessage());
}

Вызов e.printStackTrace () отправляет его куда-то, чего я не могу найти.

Ответы [ 4 ]

4 голосов
/ 02 декабря 2008

см. Эту статью: http://lwuit.blogspot.com/2008/12/redirecting-output-on-s60-devices.html

Жаль, что нет ни System.setErr (PrintWriter), ни Thread.getStackTrace ()

Я не думаю, что есть (общее) решение этой проблемы

1 голос
/ 31 января 2009

Даже в CLDC 1.1 этого не существует .. надеюсь, что Sun включит перенаправление ошибок и исходящий поток в будущих версиях. Это очень важно для ведения журнала / отладки.

1 голос
/ 13 декабря 2008

Нет, вы не можете. Трассировка стека всегда печатается в System.err, и в CLDC нет способа перенаправить System.err куда-либо еще.

0 голосов
/ 06 июля 2010

Я создал инструмент, который можно использовать для регистрации правильных трассировок стека также в CLDC. Проверьте это в http://jarrut.sourceforge.net. Это все еще очень ново и может иметь некоторые грубые края, но это работает для меня, и я не мог себе представить разработку MID-лет без него Лучший способ использовать это, чтобы объединить это с microlog.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...