Class DefaultModelBuilder
java.lang.Object
org.apache.maven.internal.impl.model.DefaultModelBuilder
- All Implemented Interfaces:
Service
,ModelBuilder
The model builder is responsible for building the
Model
from the POM file.
There are two ways to main use cases: the first one is to build the model from a POM file
on the file system in order to actually build the project. The second one is to build the
model for a dependency or an external parent.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final record
protected class
protected class
Nested classes/interfaces inherited from interface org.apache.maven.api.services.ModelBuilder
ModelBuilder.ModelBuilderSession
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final DependencyManagementImporter
private final DependencyManagementInjector
private static final String
private static final String
private final InheritanceAssembler
private final Interpolator
private final org.slf4j.Logger
private final ModelCacheFactory
private final ModelInterpolator
private final ModelNormalizer
private final ModelPathTranslator
private final ModelProcessor
private final ModelResolver
private final ModelUrlNormalizer
private final ModelValidator
static final String
private static final String
private final PathTranslator
private final PluginConfigurationExpander
private final PluginManagementInjector
private final ProfileInjector
private final ProfileSelector
private static final String
private final RootLocator
private final SuperPomProvider
private final List
<ModelTransformer> private final ModelVersionParser
Fields inherited from interface org.apache.maven.api.services.ModelBuilder
MODEL_VERSION_4_0_0, MODEL_VERSION_4_1_0, VALID_MODEL_VERSIONS
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultModelBuilder
(ModelProcessor modelProcessor, ModelValidator modelValidator, ModelNormalizer modelNormalizer, ModelInterpolator modelInterpolator, ModelPathTranslator modelPathTranslator, ModelUrlNormalizer modelUrlNormalizer, SuperPomProvider superPomProvider, InheritanceAssembler inheritanceAssembler, ProfileSelector profileSelector, ProfileInjector profileInjector, PluginManagementInjector pluginManagementInjector, DependencyManagementInjector dependencyManagementInjector, DependencyManagementImporter dependencyManagementImporter, PluginConfigurationExpander pluginConfigurationExpander, ModelVersionParser versionParser, List<ModelTransformer> transformers, ModelCacheFactory modelCacheFactory, ModelResolver modelResolver, Interpolator interpolator, PathTranslator pathTranslator, RootLocator rootLocator) -
Method Summary
Modifier and TypeMethodDescriptionprivate static Dependency
addExclusions
(Dependency candidate, List<Exclusion> exclusions) buildRawModel
(ModelBuilderRequest request) private boolean
containsCoordinates
(String message, String groupId, String artifactId, String version) (package private) static String
getGroupId
(Model model) private DefaultProfileActivationContext
getProfileActivationContext
(ModelBuilderRequest request, Model model) private Map
<String, Activation> getProfileActivations
(Model model) getSubprojects
(Model activated) private Model
getSuperModel
(String modelVersion) (package private) static String
getVersion
(Model model) private Model
injectProfileActivations
(Model model, Map<String, Activation> activations) private Model
interpolateModel
(Model model, ModelBuilderRequest request, ModelProblemCollector problems) private boolean
private boolean
match
(Exclusion exclusion, Dependency candidate) private boolean
rawChildVersionReferencesParent
(String rawChildModelVersion)
-
Field Details
-
NAMESPACE_PREFIX
- See Also:
-
RAW
- See Also:
-
FILE
- See Also:
-
IMPORT
- See Also:
-
PARENT
- See Also:
-
logger
private final org.slf4j.Logger logger -
modelProcessor
-
modelValidator
-
modelNormalizer
-
modelInterpolator
-
modelPathTranslator
-
modelUrlNormalizer
-
superPomProvider
-
inheritanceAssembler
-
profileSelector
-
profileInjector
-
pluginManagementInjector
-
dependencyManagementInjector
-
dependencyManagementImporter
-
pluginConfigurationExpander
-
versionParser
-
transformers
-
modelCacheFactory
-
modelResolver
-
interpolator
-
pathTranslator
-
rootLocator
-
-
Constructor Details
-
DefaultModelBuilder
@Inject public DefaultModelBuilder(ModelProcessor modelProcessor, ModelValidator modelValidator, ModelNormalizer modelNormalizer, ModelInterpolator modelInterpolator, ModelPathTranslator modelPathTranslator, ModelUrlNormalizer modelUrlNormalizer, SuperPomProvider superPomProvider, InheritanceAssembler inheritanceAssembler, ProfileSelector profileSelector, ProfileInjector profileInjector, PluginManagementInjector pluginManagementInjector, DependencyManagementInjector dependencyManagementInjector, DependencyManagementImporter dependencyManagementImporter, PluginConfigurationExpander pluginConfigurationExpander, ModelVersionParser versionParser, List<ModelTransformer> transformers, ModelCacheFactory modelCacheFactory, ModelResolver modelResolver, Interpolator interpolator, PathTranslator pathTranslator, RootLocator rootLocator)
-
-
Method Details
-
newSession
- Specified by:
newSession
in interfaceModelBuilder
-
getSubprojects
-
buildRawModel
- Specified by:
buildRawModel
in interfaceModelBuilder
- Throws:
ModelBuilderException
-
getGroupId
-
getVersion
-
getProfileActivationContext
private DefaultProfileActivationContext getProfileActivationContext(ModelBuilderRequest request, Model model) -
getProfileActivations
-
injectProfileActivations
-
interpolateModel
private Model interpolateModel(Model model, ModelBuilderRequest request, ModelProblemCollector problems) -
rawChildVersionReferencesParent
-
getSuperModel
-
addExclusions
-
match
-
match
-
containsCoordinates
-