ihmcrobotics / ihmc-build

Composite build and IDE classpath seperation support for JVM Gradle projects.
Apache License 2.0
5 stars 4 forks source link

Symantic: Create the notion of a module instead of "project source set" #34

Open calvertdw opened 6 years ago

calvertdw commented 6 years ago

Overview

The extraSourceSets property, the ihmc.sourceSetProject method, and the README all refer to "source set projects", which are a key feature of this plugin and one of it's main purposes: to seperate the classpaths of Gradle source sets in IDEs.

Problem and Proposed Solution

It is hard to talk about these things without a good name that people can hang on to. Since it is essentially a central feature to the plugin, they should be given a name. "Module" is a good choice because there is no notion of a "module" in Gradle, and IntelliJ uses the term to mean essentially, "a collection of source with it's own seperate classpath".

Technical Actions

Deprecate extraSourceSets, rename to modules

modules contains "main" by default, and will be automatically added if not specified. For example modules = ["main", "test"] and modules = ["test"] would both setup both a "main" and a "test" module.