Managing Multi-Module Project with Gradle Plugin and Kotlin

Malvin Sutanto

Software Engineer

Wantedly

Lately, more and more android projects are adopting multi-module setup. The number of modules for a project can vary and some projects can even have more than a hundred modules. Managing these modules can then be very cumbersome as it involves a lot of copying and pasting common settings and codes between build.gradle files. Some teams utilize buildscript.ext and apply from: statements to try to remedy this issue. However, these methods are very limited in terms of functionalities.
In this talk, I will discuss how the Gradle plugin works, and how we can write a custom plugin in Kotlin to help us manage an Android multi-module project. I will also present techniques to provide custom configurations in our Gradle plugin so that we can modify our build depending on the module, and further, extend the plugin's capabilities by integrating it with other Gradle plugins; e.g., Jacoco plugin. Lastly, I will share our experience of building a Gradle plugin and explore the benefits and limitations that I've encountered.

Has been developing for Android since 2013. Works in UI and SDK development.
Studied and worked in Singapore, moved to Japan and Joined Wantedly July 2018

droidcon APAC is produced by:

Mobile Seasons GmbH (droidcon Global HQ)

Messedamm 22

14055, Berlin

Germany

.droidcon is a registered Trademark of Mobile Seasons GmbH

  • dc-social
  • Twitter - White Circle
  • Facebook - White Circle