Gradle Clean не работает из-за ворса и древесины
Используя Android Studio 1.5.1 в Windows 7 и gradle 2.8 или 2.10, я получил следующую ошибку при попытке запустить очистку gradle (только при использовании Timber):
gradle clean
Incremental java compilation is an incubating feature.
WARNING [Project: :app] To shrink resources you must also enable ProGuard
:clean
:app:clean FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:clean'.
> Unable to delete file: C:\blabla\app\build\intermediates\exploded-aar\com.jakewharton.timber\timber\4.1.0\jars\lint.jar
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Нашел это: https://code.google.com/p/android/issues/detail?id=190812 и это: http://bugs.java.com/bugdatabase/view_bug.do?bug_id=5041014 Но для Android Studio & gradle, у нас нет контроля над компиляцией (поэтому нет контроля над вызовами URLClassLoader).
Спасибо!
3 ответа
Решение
Отключите все проверки lint в Timber в build.gradle:
android {
lintOptions {
disable 'LogNotTimber', 'StringFormatInTimber', 'ThrowableNotAtBeginning', 'BinaryOperationInTimber', 'TimberArgCount', 'TimberArgTypes', 'TimberTagLength'
}
}
Я также предлагаю отправить PR, который решит проблему, чтобы вы могли включить эти проверки снова. Вы не хотите подавлять их до бесконечности.
Обновлять
Timber
до 5.0.1 и, вероятно,
com.android.tools.build:gradle
до 7.0.0.