Interface BuildSystem

All Known Implementing Classes:
GradleBuildSystem, MavenBuildSystem

public interface BuildSystem
A build system that can be used by a generated project.
Author:
Andy Wilkinson
  • Method Details

    • id

      String id()
      The id of the build system.
      Returns:
      the id
    • dialect

      default String dialect()
      The dialect of the build system, or null if the build system does not support multiple dialects.
      Returns:
      the dialect or null
    • getMainSource

      default SourceStructure getMainSource(Path projectRoot, Language language)
      Returns a SourceStructure for main sources.
      Parameters:
      projectRoot - the root of the project structure
      language - the language of the project
      Returns:
      a SourceStructure for main assets
    • getTestSource

      default SourceStructure getTestSource(Path projectRoot, Language language)
      Returns a SourceStructure for test sources.
      Parameters:
      projectRoot - the root of the project structure
      language - the language of the project
      Returns:
      a SourceStructure for test assets
    • forId

      static BuildSystem forId(String id)
    • forIdAndDialect

      static BuildSystem forIdAndDialect(String id, String dialect)