Llegamos a ustedes gracias a:



Noticias

Upgrade de Gradle crea aplicaciones Java más rápido para Android

[10/03/2017] Gradle, el sistema de creación preferido para el desarrollo móvil de Android, ha pasado por un upgrade y ahora tiene un mejor soporte para la creación de aplicaciones Java.

Gradle 3.4 ofrece resultados incrementales rápidos y "el final de la temida pérdida de classpath, afirmó Cedric Champeau, ingeniero de software que ha trabajado en el desarrollo de la herramienta. Los cambios en el upgrade pueden mejorar radicalmente los tiempos de creación, afirmó.

La pérdida de classpath se refiere a los elementos de classpath de una biblioteca que se requieren para compilar las fuentes que surten al classpath de bibliotecas dependientes o aplicaciones dependientes. Para detener este problema, se introduce una separación entre las configuraciones de la "api y la "implementación, para que los proyectos dependientes sólo vean el classpath de la configuración de la api; por lo tanto, solo las bibliotecas necesarias para utilizar las interfaces de cara al público para la biblioteca la ven. Las bibliotecas externas específicas de la implementación estarían en el classpath de la "implementación y no serían visibles al classpath de compilación de la biblioteca dependiente.

La capacidad de evitación de compilación del upgrade se activa mediante un mecanismo que ofrece verificación actualizada de la compilación de Java sensible sólo a los cambios de la API pública. Si se cambia un comentario o incluso una API privada en un proyecto downstream, la compilación de Java para proyectos upstream estará actualizada.

Un compilador incremental experimental presentado anteriormente se convierte en estable en la actualización 3.4. También ofrece mejor desempeño. El compilador, que se convertirá pronto en el predeterminado, aprovecha los caches en memoria que se encuentran en el Gradle daemon a través de compilaciones, por lo que es significativamente más rápido, afirmó Champeau.

Gradle 3.4 también cuenta con un plugin de biblioteca de Java para crear un componente para su uso como una dependencia de otro proyecto. Esto proporciona una fuerte separación entre el código público y privado y mejora el desempeño e impone límites arquitectónicos en el nivel de creación.