Android Gradle-что использовать вместо compileOnly?
согласно следующему сообщению SO,compile
стало implementation
в последнее время: в чем разница между реализацией и компиляцией в gradle
мой вопрос в том, что я должен использовать вместо compileOnly
? Сообщение выше не касается этой конфигурации gradle. Я знаю, что я все еще могу использовать compileOnly
но какова рекомендуемая конфигурация, которая не будет устаревать в ближайшее время?
казалось, что все конфигурации, которые содержат ..compile..
будет заменено на ..implementation..
. Я пытался!--6--> но не принимается Android Studio.
2 ответов
compileOnly
is замена-эквивалентная конфигурация, которая является устаревшей, является provided
. См.документация.
Android плагин для Gradle 3.0.0
перед-устаревшая конфигурация -provided
после-Новая конфигурация -compileOnly
Gradle добавляет зависимость только к пути к классу компиляции (он не добавляется к выходу сборки). Это полезно, когда вы создаете модуль библиотеки Android, и вам нужна зависимость во время компиляции, но необязательно присутствовать во время выполнения. То есть, если вы используете эту конфигурацию, то ваш библиотечный модуль необходимо включить условие выполнения, чтобы проверить, доступна ли зависимость, а затем изящно изменить ее поведение, чтобы она все еще могла функционировать, если она не предоставлена. Это помогает уменьшить размер конечного APK, не добавляя переходных зависимостей, которые не являются критическими. Эта конфигурация ведет себя так же, как при условии (который теперь устарел).