При включении lint с базовой конфигурацией файла я получаю следующее исключение.
> Lint infrastructure error
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
.........................
.........................
Caused by: java.lang.IllegalStateException: path must not be null
at com.android.tools.lint.XmlReporter.writeIssue(XmlReporter.kt:209)
at com.android.tools.lint.XmlReporter.writeIssues(XmlReporter.kt:113)
at com.android.tools.lint.XmlReporter.write(XmlReporter.kt:99)
at com.android.tools.lint.LintCliClient.run(LintCliClient.java:288)
Я добавил следующие lintOptions в мой модуль build.gradle
После чего я запустил задание lintDebug gradle.
android{
lintOptions {
baseline file("lint-baseline.xml")
warningsAsErrors true
abortOnError true
}
}
Я ожидал, что мои изменения создадут файл lint-baseline.xml в корневой директории модуля для первого запуска и завершатся неудачно при сборке, что указывает на создание lint-baseline.xml. Для второго запуска lint должен прочитать lint-baseline.xml и подавить существующие сообщения об ошибках / предупреждениях.
Но при первом запуске создается пустой файл lint-baseline.xml, который завершается с ошибкой инфраструктуры Lint. Последующие запуски не привели к ошибке инфраструктуры Lint, но, поскольку файл пуст, сравнение не удалось, что привело к ошибкам / предупреждениям.
Мое приложение содержит файлы java и kotlin.