Class GenerateReleasePomsPhase
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.apache.maven.shared.release.phase.AbstractReleasePhase
-
- org.apache.maven.shared.release.phase.AbstractReleasePomsPhase
-
- org.apache.maven.shared.release.phase.GenerateReleasePomsPhase
-
- All Implemented Interfaces:
ReleasePhase
,ResourceGenerator
,org.codehaus.plexus.logging.LogEnabled
@Component(role=ReleasePhase.class, hint="generate-release-poms") public class GenerateReleasePomsPhase extends AbstractReleasePomsPhase implements ResourceGenerator
Generate release POMs.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
FINALNAME_EXPRESSION
private org.apache.maven.model.interpolation.ModelInterpolator
modelInterpolator
private java.util.Map<java.lang.String,ScmTranslator>
scmTranslators
SCM URL translators mapped by provider name.private org.apache.maven.model.superpom.SuperPomProvider
superPomProvider
-
Constructor Summary
Constructors Constructor Description GenerateReleasePomsPhase()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addReleasePomsToScm(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result, java.util.List<java.io.File> releasePoms)
ReleaseResult
clean(java.util.List<org.apache.maven.project.MavenProject> reactorProjects)
Clean up after a phase if it leaves any additional files in the checkout.private java.util.List<org.apache.maven.model.Dependency>
createReleaseDependencies(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project)
private java.util.List<org.apache.maven.model.Extension>
createReleaseExtensions(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project)
private org.apache.maven.model.Model
createReleaseModel(org.apache.maven.project.MavenProject project, ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, ReleaseResult result)
private java.util.List<org.apache.maven.model.Plugin>
createReleasePlugins(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project)
private java.util.List<org.apache.maven.model.ReportPlugin>
createReleaseReportPlugins(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project)
private org.apache.maven.model.Scm
createReleaseScm(org.apache.maven.model.Scm scm, ScmTranslator scmTranslator, ReleaseDescriptor releaseDescriptor)
ReleaseResult
execute(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects)
Execute the phase.private ReleaseResult
execute(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate)
private java.lang.String
findOriginalFinalName(org.apache.maven.project.MavenProject project)
private java.io.File
generateReleasePom(org.apache.maven.project.MavenProject project, ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result)
private void
generateReleasePoms(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result)
private java.lang.String
getNextVersion(ReleaseDescriptor releaseDescriptor, java.lang.String groupId, java.lang.String artifactId, java.lang.String version)
private java.lang.String
getReleaseVersion(ReleaseDescriptor releaseDescriptor, org.apache.maven.artifact.Artifact artifact)
private ScmTranslator
getScmTranslator(org.apache.maven.scm.repository.ScmRepository scmRepository)
private java.lang.String
resolvePath(java.nio.file.Path basedir, java.lang.String current, java.lang.String superInterpolated, java.lang.String superRaw)
private java.lang.String
resolvePath(java.nio.file.Path basedir, java.lang.String current, java.util.Map<java.lang.String,java.lang.String> superValues)
ReleaseResult
simulate(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects)
Simulate the phase, but don't make any changes to the project.private void
unalignFromBaseDirectory(org.apache.maven.model.Model releaseModel, java.io.File basedir)
-
Methods inherited from class org.apache.maven.shared.release.phase.AbstractReleasePomsPhase
getScmProvider, getScmRepository
-
Methods inherited from class org.apache.maven.shared.release.phase.AbstractReleasePhase
getReleaseResultSuccess, logDebug, logDebug, logError, logInfo, logWarn
-
-
-
-
Field Detail
-
FINALNAME_EXPRESSION
private static final java.lang.String FINALNAME_EXPRESSION
- See Also:
- Constant Field Values
-
superPomProvider
@Requirement private org.apache.maven.model.superpom.SuperPomProvider superPomProvider
-
modelInterpolator
@Requirement private org.apache.maven.model.interpolation.ModelInterpolator modelInterpolator
-
scmTranslators
@Requirement(role=ScmTranslator.class) private java.util.Map<java.lang.String,ScmTranslator> scmTranslators
SCM URL translators mapped by provider name.
-
-
Method Detail
-
execute
public ReleaseResult execute(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects) throws ReleaseExecutionException, ReleaseFailureException
Description copied from interface:ReleasePhase
Execute the phase.- Specified by:
execute
in interfaceReleasePhase
- Parameters:
releaseDescriptor
- the configuration to usereleaseEnvironment
- the environmental configuration, such as Maven settings, Maven home, etc.reactorProjects
- the reactor projects- Returns:
- the release result
- Throws:
ReleaseExecutionException
- an exception during the execution of the phaseReleaseFailureException
- a failure during the execution of the phase
-
execute
private ReleaseResult execute(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate) throws ReleaseExecutionException, ReleaseFailureException
-
generateReleasePoms
private void generateReleasePoms(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result) throws ReleaseExecutionException, ReleaseFailureException
-
generateReleasePom
private java.io.File generateReleasePom(org.apache.maven.project.MavenProject project, ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result) throws ReleaseExecutionException, ReleaseFailureException
-
addReleasePomsToScm
private void addReleasePomsToScm(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result, java.util.List<java.io.File> releasePoms) throws ReleaseFailureException, ReleaseExecutionException
-
createReleaseModel
private org.apache.maven.model.Model createReleaseModel(org.apache.maven.project.MavenProject project, ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, ReleaseResult result) throws ReleaseFailureException, ReleaseExecutionException
-
unalignFromBaseDirectory
private void unalignFromBaseDirectory(org.apache.maven.model.Model releaseModel, java.io.File basedir)
-
resolvePath
private java.lang.String resolvePath(java.nio.file.Path basedir, java.lang.String current, java.lang.String superInterpolated, java.lang.String superRaw)
-
resolvePath
private java.lang.String resolvePath(java.nio.file.Path basedir, java.lang.String current, java.util.Map<java.lang.String,java.lang.String> superValues)
-
findOriginalFinalName
private java.lang.String findOriginalFinalName(org.apache.maven.project.MavenProject project)
-
simulate
public ReleaseResult simulate(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects) throws ReleaseExecutionException, ReleaseFailureException
Description copied from interface:ReleasePhase
Simulate the phase, but don't make any changes to the project.- Specified by:
simulate
in interfaceReleasePhase
- Parameters:
releaseDescriptor
- the configuration to usereleaseEnvironment
- the environmental configuration, such as Maven settings, Maven home, etc.reactorProjects
- the reactor projects- Returns:
- the release result
- Throws:
ReleaseExecutionException
- an exception during the execution of the phaseReleaseFailureException
- a failure during the execution of the phase
-
getNextVersion
private java.lang.String getNextVersion(ReleaseDescriptor releaseDescriptor, java.lang.String groupId, java.lang.String artifactId, java.lang.String version) throws ReleaseFailureException
- Throws:
ReleaseFailureException
-
getScmTranslator
private ScmTranslator getScmTranslator(org.apache.maven.scm.repository.ScmRepository scmRepository)
-
createReleaseScm
private org.apache.maven.model.Scm createReleaseScm(org.apache.maven.model.Scm scm, ScmTranslator scmTranslator, ReleaseDescriptor releaseDescriptor)
-
createReleaseDependencies
private java.util.List<org.apache.maven.model.Dependency> createReleaseDependencies(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project) throws ReleaseFailureException
- Throws:
ReleaseFailureException
-
getReleaseVersion
private java.lang.String getReleaseVersion(ReleaseDescriptor releaseDescriptor, org.apache.maven.artifact.Artifact artifact) throws ReleaseFailureException
- Throws:
ReleaseFailureException
-
createReleasePlugins
private java.util.List<org.apache.maven.model.Plugin> createReleasePlugins(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project) throws ReleaseFailureException
- Throws:
ReleaseFailureException
-
createReleaseReportPlugins
private java.util.List<org.apache.maven.model.ReportPlugin> createReleaseReportPlugins(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project) throws ReleaseFailureException
- Throws:
ReleaseFailureException
-
createReleaseExtensions
private java.util.List<org.apache.maven.model.Extension> createReleaseExtensions(ReleaseDescriptor releaseDescriptor, org.apache.maven.project.MavenProject project) throws ReleaseFailureException
- Throws:
ReleaseFailureException
-
clean
public ReleaseResult clean(java.util.List<org.apache.maven.project.MavenProject> reactorProjects)
Description copied from interface:ResourceGenerator
Clean up after a phase if it leaves any additional files in the checkout.- Specified by:
clean
in interfaceResourceGenerator
- Parameters:
reactorProjects
- the reactor projects- Returns:
- the release result
-
-