Clone
Sterling Greene
committed
on 01 May 17
Use separate output directories for all JVM languages
- Introduce an outputDir on SourceDirectorySet
- Default output directory is now `b… Show more
Use separate output directories for all JVM languages

- Introduce an outputDir on SourceDirectorySet

  - Default output directory is now `build/classes/<source directory set name>/<source set name>`

  - Example: Java compilation goes to build/classes/java/main instead of build/classes/main

- Adapt JDepend, FindBugs, Test and ValidateTaskProperties tasks to handle multiple class directories

- Deprecate setClassesDir/getClassesDir on SourceSetOutput

  - Calling setClassesDir restores old behavior (shared output directory)

- Introduce addClassesDir and getClassesDirs on SourceSetOutput

- OSGi plugin needs a single classes directory, so introduce 'osgiClasses' task that syncs all classes to a single directory

Most of the changes to integration tests are find classes in their new location. Helper methods in AbstractIntegrationSpec

can locate class files vs hardcoding a path.

Squashed commit of sg-split-jvm-classes branch for REVIEW-6502

Show less

master + 474 more