in enforcer-rules/src/main/java/org/apache/maven/enforcer/rules/RequireSnapshotVersion.java [50:71]
public void execute() throws EnforcerRuleException {
Artifact artifact = project.getArtifact();
if (!artifact.isSnapshot()) {
String message = getMessage();
StringBuilder sb = new StringBuilder();
if (message != null) {
sb.append(message).append(System.lineSeparator());
}
sb.append("This project cannot be a release:").append(artifact.getId());
throw new EnforcerRuleException(sb.toString());
}
if (failWhenParentIsRelease && project.hasParent()) {
Artifact parentArtifact = Optional.ofNullable(project.getParent())
.map(MavenProject::getArtifact)
.orElse(null);
if (parentArtifact != null && !parentArtifact.isSnapshot()) {
throw new EnforcerRuleException("Parent cannot be a release: " + parentArtifact.getId());
}
}
}