Package org.savantbuild.runtime
Class DefaultBuildRunner
java.lang.Object
org.savantbuild.runtime.DefaultBuildRunner
- All Implemented Interfaces:
BuildRunner
Default build runner. This is essentially the main entry point for the build system. It takes a build file and a list
of targets and runs the build.
This implementation uses the main BuildFileParser to parse the build file into domain objects.
Once the build file is parsed, this uses the default ProjectRunner to run build on the project.
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultBuildRunner(org.savantbuild.output.Output output, BuildFileParser buildFileParser, ProjectRunner projectRunner) -
Method Summary
Modifier and TypeMethodDescriptionvoidrun(Path buildFile, RuntimeConfiguration runtimeConfiguration) Loads the given build file and executes the given targets in the build file.
-
Constructor Details
-
DefaultBuildRunner
public DefaultBuildRunner(org.savantbuild.output.Output output, BuildFileParser buildFileParser, ProjectRunner projectRunner)
-
-
Method Details
-
run
public void run(Path buildFile, RuntimeConfiguration runtimeConfiguration) throws org.savantbuild.dep.workflow.ArtifactMetaDataMissingException, org.savantbuild.dep.workflow.ArtifactMissingException, BuildRunException, BuildFailureException, org.savantbuild.dep.domain.CompatibilityException, org.savantbuild.util.CyclicException, org.savantbuild.dep.LicenseException, org.savantbuild.security.MD5Exception, ParseException, PluginLoadException, org.savantbuild.dep.workflow.process.ProcessFailureException, org.savantbuild.dep.PublishException, org.savantbuild.domain.VersionException Loads the given build file and executes the given targets in the build file.- Specified by:
runin interfaceBuildRunner- Parameters:
buildFile- The build file.runtimeConfiguration- The runtime configuration.- Throws:
org.savantbuild.dep.workflow.ArtifactMetaDataMissingException- If any dependencies of the project are missing an AMD file in the repository or local cache.org.savantbuild.dep.workflow.ArtifactMissingException- If any dependencies of the project are missing in the repository or local cache.BuildRunException- If the build can not be run (internally not due to a failure of the build itself).BuildFailureException- If the build fails while running.org.savantbuild.dep.domain.CompatibilityException- If the project has incompatible versions of a dependency.org.savantbuild.util.CyclicException- If the project has cyclic dependencies.org.savantbuild.dep.LicenseException- If the project has a dependency with an invalid license.org.savantbuild.security.MD5Exception- If a dependency is corrupt.ParseException- If the build file can not be parsed.PluginLoadException- If a plugin load failed for any reason (the plugin might not exist, might be invalid or could have thrown an exception during construction because it was missing configuration or something.)org.savantbuild.dep.workflow.process.ProcessFailureException- If the downloading of a dependency fails.org.savantbuild.dep.PublishException- If there was an error publishing an artifact.org.savantbuild.domain.VersionException- If any of the versions are not semantic.
-