Ответ 1
Я думаю, что вы ищете атрибут verbose="true"
.
запрашивает компилятор для подробного вывода; по умолчанию - нет.
Вы уже упоминали в комментариях, что это не печатает причину вашей ошибки. Ну, я думаю, что в вашей ситуации происходит что-то еще. У меня есть пример проекта, и в любом случае причина моей ошибки была напечатана. Здесь вывод с verbose="false"
:
[mkdir] Created dir: C:\Projects\MavenSandbox\target\classes
[javac] C:\Projects\MavenSandbox\mavensandbox.xml:284: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 3 source files to C:\Projects\MavenSandbox\target\classes
[javac] C:\Projects\MavenSandbox\src\main\java\com\sandbox\Sandbox.java:8: error: cannot find symbol
[javac] System.out.prinln("Hello, I\'m the best!");
[javac] ^
[javac] symbol: method prinln(String)
[javac] location: variable out of type PrintStream
[javac] 1 error
Что-то странное и специфичное для вашего кода вызывает плохое сообщение об ошибке. Можете ли вы создать образец проекта, который воспроизводит ошибку?
Как вы уже упоминали, debug="true"
не является атрибутом, который вы ищете.
Указывает, должен ли источник компилироваться с информацией об отладке; по умолчанию отключено. Если установлено значение off, -g: none будет передано в командной строке для компиляторов, которые его поддерживают (для других компиляторов не будет использоваться аргумент командной строки). Если установлено значение true, значение атрибута debuglevel определяет аргумент командной строки.
Вы знаете, когда вы получаете трассировку стека, и в ней есть номера строк? То, что делает debug="true"
. Если это не так, вы не получите номера строк.