Как я могу получить номер строки исходного кода в трассировке стека ошибок в банке, созданной с помощью ant build?
Я использую ant для создания jar моего проекта в eclipse. Я использую эту банку на tomcat. Но всякий раз, когда исключение происходит в моем коде (который находится внутри jar), трассировка стека ошибок приходит, но номер строки не приходит - вместо этого он говорит неизвестный источник.
Как я могу получить номера строк в трассировке стека ошибок?
Ответы
Ответ 1
Вам нужно скомпилировать банку с отладочной информацией. В частности, вам нужно найти задачу javac
, которая скомпилирует классы, которые вы позже используете, и добавьте атрибут debug="on"
. Пример:
<javac srcdir="${src}"
destdir="${build}"
classpath="xyz.jar"
debug="on"
source="1.4" />
Подробную информацию можно найти здесь.
Ответ 2
Атрибут "debug" требует значений "true" или "false" и переводится в параметр javac -g.
Если явно указать аргумент -g, вы можете сделать это, указав атрибут
" debuglevel ", который принимает" источник "," vars "и другие значения (см. ant task
документацию Больше подробностей).
Установка debug = "true" и debuglevel = "source" будет прикреплять источник, но не будет предоставлять информацию о номере
, debuglevel =" lines, vars, source "предоставит вам информацию
, что вам нужно.