Android Studio Lint проверяет наличие ненужной зависимости модуля
При запуске проверки Lint в файлах в моем проекте часто встречается ошибка, которая выглядит так (фактические имена файлов отредактированы, но вы получите идею):
Зависимость от модуля 'name_of_my_project' от модуля "some_3rd_party_library" можно было бы удалить, если дополнительная область действия в "Файл" filepath_to_the_class_being_analyzed ' также не содержит ссылок на модуль 'some_3rd_party_library'
Я получаю эту ошибку для каждой отдельной библиотеки, которая не скомпилирована с Gradle - i.e. библиотеками, которые были импортированы целиком в проект, а затем добавлены как зависимости.
Facebook - отличный пример библиотеки, которая даже если вы хотите скомпилировать ее через Gradle
, вы не могли, потому что они ее не поддерживают, и вам нужно запустить ее как локальную библиотеку - похоже, что вы Затем получите эту "ненужную зависимость от модуля" для каждого класса, который напрямую не вызывает Facebook.
Итак, вопрос в том, каков "правильный" способ обработки этой ошибки? Я игнорирую это, или я должен каким-то образом изменить код, чтобы он исчез?
Изменить: в меню настроек для Lint он описывает проверку следующим образом (в случае, если это поможет понять):
В этой проверке перечислены модули, которые содержат избыточные зависимости от другие модули. Эти зависимости можно безопасно удалить.
Ответы
Ответ 1
Известны проблемы с шашками Lint. Я не получаю эту ошибку в Android Studio 2.1.1. Однако, если вы все еще это делаете, и вы знаете, что это было ложным, я бы рекомендовал перейти в Настройки → Редактор → Инспекции → Ненужная зависимость от модуля и изменить тип серьезности от Warning
до Info
. Таким образом, вы получаете "чистую сборку линта" и избегаете состояния "разбитых окон" из-за плохого lint algo. На самом деле, я создал специальную категорию, которая имеет серьезность информации под названием Info Due To Bad Lint Algo
, которой я присвоил все, что я знаю, подделка. Таким образом, я могу периодически просматривать их и видеть, исправлены ли они.
Вы должны сообщить об этом им, так что есть надежда на его исправление... Удачи!
Ответ 2
Вы можете избежать проверки линт, используя следующий блок кода.
Добавьте следующий блок кода в файл app build.gradle внутри android {}
lintOptions {
checkReleaseBuilds false
// set to true to turn off analysis progress reporting by lint
quiet true
// if true, only report errors
ignoreWarnings true
abortOnError false
disable "ResourceType"
}