protected void prepareRelease()

in maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java [386:445]


    protected void prepareRelease(boolean generateReleasePoms) throws MojoExecutionException, MojoFailureException {
        // this is here so the subclass can call it without getting the extra generateReleasePoms check in execute()
        // above
        super.execute();

        final ReleaseDescriptorBuilder config = createReleaseDescriptor();
        config.setAddSchema(addSchema);
        config.setGenerateReleasePoms(generateReleasePoms);
        config.setScmUseEditMode(useEditMode);
        config.setPreparationGoals(preparationGoals);
        config.setCompletionGoals(completionGoals);
        config.setCommitByProject(commitByProject);
        config.setUpdateDependencies(updateDependencies);
        config.setAutoVersionSubmodules(autoVersionSubmodules);
        config.setAllowTimestampedSnapshots(allowTimestampedSnapshots);
        config.setSnapshotReleasePluginAllowed(allowReleasePluginSnapshot);
        config.setDefaultReleaseVersion(releaseVersion);
        config.setDefaultDevelopmentVersion(developmentVersion);
        config.setRemoteTagging(remoteTagging);
        config.setScmSignTags(signTag);
        config.setUpdateWorkingCopyVersions(updateWorkingCopyVersions);
        config.setSuppressCommitBeforeTagOrBranch(suppressCommitBeforeTag);
        config.setWaitBeforeTagging(waitBeforeTagging);
        config.setProjectVersionPolicyId(projectVersionPolicyId);
        if (projectVersionPolicyConfig != null) {
            config.setProjectVersionPolicyConfig(projectVersionPolicyConfig.toString());
        }
        config.setProjectNamingPolicyId(projectTagNamingPolicyId);
        config.setScmDevelopmentCommitComment(scmDevelopmentCommitComment);
        config.setScmReleaseCommitComment(scmReleaseCommitComment);
        config.setAutoResolveSnapshots(autoResolveSnapshots);
        config.setPinExternals(pinExternals);
        config.setLineSeparator(resolveLineSeparator());

        if (checkModificationExcludeList != null) {
            checkModificationExcludes =
                    checkModificationExcludeList.replaceAll("\\s", "").split(",");
        }

        if (checkModificationExcludes != null) {
            config.setCheckModificationExcludes(Arrays.asList(checkModificationExcludes));
        }

        ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
        prepareRequest.setReleaseDescriptorBuilder(config);
        prepareRequest.setReleaseEnvironment(getReleaseEnvironment());
        prepareRequest.setReactorProjects(getReactorProjects());
        prepareRequest.setReleaseManagerListener(new DefaultReleaseManagerListener(getLog(), dryRun));
        prepareRequest.setResume(resume);
        prepareRequest.setDryRun(dryRun);
        prepareRequest.setUserProperties(session.getUserProperties());

        try {
            releaseManager.prepare(prepareRequest);
        } catch (ReleaseExecutionException e) {
            throw new MojoExecutionException(e.getMessage(), e);
        } catch (ReleaseFailureException e) {
            throw new MojoFailureException(e.getMessage(), e);
        }
    }