Interface ProjectBuildingHelper

All Known Implementing Classes:
DefaultProjectBuildingHelper

public interface ProjectBuildingHelper
Assists the project builder. Warning: This is an internal utility interface that is only public for technical reasons, it is not part of the public API. In particular, this interface can be changed or deleted without prior notice.
Author:
Benjamin Bentmann
  • Method Details

    • createArtifactRepositories

      List<ArtifactRepository> createArtifactRepositories(List<Repository> pomRepositories, List<ArtifactRepository> externalRepositories, ProjectBuildingRequest request) throws InvalidRepositoryException
      Creates the effective artifact repositories from the specified POM repositories.
      Parameters:
      pomRepositories - The POM repositories to create the artifact repositories from, must not be null.
      externalRepositories - The external (and already mirrored) repositories to merge into the result list, may be null.
      request - The project building request holding further settings like repository settings, must not be null.
      Returns:
      The effective artifact repositories, never null.
      Throws:
      InvalidRepositoryException
    • createProjectRealm

      Creates the project realm that hosts the build extensions of the specified model.
      Parameters:
      project - The project to create the project realm for, must not be null
      model - The model to create the project realm for, must not be null
      request - The project building request holding further settings like repository settings, must not be null.
      Returns:
      The record with the project realm and extension artifact filter, never null.
      Throws:
      PluginResolutionException - If any build extension could not be resolved.
      PluginVersionResolutionException
      PluginManagerException
    • selectProjectRealm

      void selectProjectRealm(MavenProject project)
      Updates the context class loader such that the container will search the project realm when the model builder injects the lifecycle bindings from the packaging in the next step. The context class loader is to be reset by the project builder when the project is fully assembled.
      Parameters:
      project - The project whose class realm should be selected, must not be null.