Android Gradle-¿Qué usar en lugar de compilarOnly?
android-studio android-gradle (4)
Deben cambiarse las dependencias de su proyecto Gradle
dependencies { provided ''com.someDependency:api:78'' }
a
dependencies { compileOnly ''com.someDependency:api:78'' }
De acuerdo con la siguiente publicación de SO, la compile
ha convertido en implementation
recientemente: ¿Cuál es la diferencia entre la implementación y la compilación en Gradle?
Mi pregunta es: ¿qué debo usar en lugar de compileOnly
? La publicación anterior no trata esa configuración de gradle. Sé que todavía puedo usar compileOnly
pero ¿cuál es la configuración recomendada que no se desaprueba pronto?
Parecía que todas las configuraciones que contienen ..compile..
serían reemplazadas por ..implementation..
Intenté la implementationOnly
pero no aceptada por Android Studio.
Existe un caso cuando acepta la sugerencia automática de IDE para agregar un proyecto a su archivo de Gradle, que agregará "compilar proyecto (ruta: ''xxx'')". Corrígelo y estarás bien.
Plugin de Android para Gradle 3.0.0
antes - Configuración en desuso - provided
después - Nueva configuración - compileOnly
Gradle agrega la dependencia solo a la ruta de clase de compilación (no se agrega a la salida de compilación). Esto es útil cuando está creando un módulo de biblioteca de Android y necesita la dependencia durante la compilación, pero es opcional tenerlo presente en tiempo de ejecución. Es decir, si usa esta configuración, entonces su módulo de biblioteca debe incluir una condición de tiempo de ejecución para verificar si la dependencia está disponible, y luego cambiar su comportamiento con gracia para que aún pueda funcionar si no se proporciona. Esto ayuda a reducir el tamaño de la APK final al no agregar dependencias transitorias que no son críticas. Esta configuración se comporta como se proporciona (que ahora está en desuso).
compileOnly
es el reemplazo, se proporciona la configuración equivalente que está en desuso. Consulte la documentación .