bmsantos
01/21/2016, 3:04 AMimport com.beust.kobalt.plugin.modules.modulesProject
val m = modulesProject {
name = "ModulesProjectExample"
group = "com.beust.kobalt"
artifactId = "modules-project-example"
version = "1.0"
modules("module1", "module2")
}
Advantages:
- Projects can be easily coupled/decoupled as modules as needed
- Modules can be easily built separately (no need to build/parse all modules)
- Syntax can still be the one currently used
Disadvantages:
- Requires IDE to load each module Build.kt, meaning that something like package or build files name will have to be modified in order to ensure uniqueness in the source path.
In other words, this is precisely the same that maven does:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>modules-project-example</groupId>
<artifactId>modules-project-example</artifactId>
<packaging>pom</packaging>
<version>1.0</version>
<name>Modules Project Example</name>
<modules>
<module>module1</module>
<module>module2</module>
</modules>
</project>