mirror of
https://gitee.com/dcren/initializr.git
synced 2025-09-20 18:48:13 +08:00
Polish generated pom
This commit removes two useless properties that are already contributed by `spring-boot-starter-parent`.
This commit is contained in:
@@ -34,6 +34,7 @@ import java.util.stream.Collectors;
|
|||||||
import io.spring.initializr.InitializrException;
|
import io.spring.initializr.InitializrException;
|
||||||
import io.spring.initializr.metadata.BillOfMaterials;
|
import io.spring.initializr.metadata.BillOfMaterials;
|
||||||
import io.spring.initializr.metadata.Dependency;
|
import io.spring.initializr.metadata.Dependency;
|
||||||
|
import io.spring.initializr.metadata.InitializrConfiguration.Env.Maven;
|
||||||
import io.spring.initializr.metadata.InitializrConfiguration.Env.Maven.ParentPom;
|
import io.spring.initializr.metadata.InitializrConfiguration.Env.Maven.ParentPom;
|
||||||
import io.spring.initializr.metadata.InitializrMetadata;
|
import io.spring.initializr.metadata.InitializrMetadata;
|
||||||
import io.spring.initializr.metadata.InitializrMetadataProvider;
|
import io.spring.initializr.metadata.InitializrMetadataProvider;
|
||||||
@@ -364,14 +365,19 @@ public class ProjectGenerator {
|
|||||||
|
|
||||||
if (isMavenBuild(request)) {
|
if (isMavenBuild(request)) {
|
||||||
model.put("mavenBuild", true);
|
model.put("mavenBuild", true);
|
||||||
ParentPom parentPom = metadata.getConfiguration().getEnv().getMaven()
|
Maven maven = metadata.getConfiguration().getEnv().getMaven();
|
||||||
.resolveParentPom(request.getBootVersion());
|
ParentPom parentPom = maven.resolveParentPom(request.getBootVersion());
|
||||||
if (parentPom.isIncludeSpringBootBom()
|
if (parentPom.isIncludeSpringBootBom()
|
||||||
&& !request.getBoms().containsKey("spring-boot")) {
|
&& !request.getBoms().containsKey("spring-boot")) {
|
||||||
request.getBoms().put("spring-boot", metadata.createSpringBootBom(
|
request.getBoms().put("spring-boot", metadata.createSpringBootBom(
|
||||||
request.getBootVersion(), "spring-boot.version"));
|
request.getBootVersion(), "spring-boot.version"));
|
||||||
}
|
}
|
||||||
|
if (!maven.isSpringBootStarterParent(parentPom)) {
|
||||||
|
request.getBuildProperties().getMaven()
|
||||||
|
.put("project.build.sourceEncoding", () -> "UTF-8");
|
||||||
|
request.getBuildProperties().getMaven()
|
||||||
|
.put("project.reporting.outputEncoding", () -> "UTF-8");
|
||||||
|
}
|
||||||
model.put("mavenParentGroupId", parentPom.getGroupId());
|
model.put("mavenParentGroupId", parentPom.getGroupId());
|
||||||
model.put("mavenParentArtifactId", parentPom.getArtifactId());
|
model.put("mavenParentArtifactId", parentPom.getArtifactId());
|
||||||
model.put("mavenParentVersion", parentPom.getVersion());
|
model.put("mavenParentVersion", parentPom.getVersion());
|
||||||
|
@@ -239,10 +239,6 @@ public class ProjectRequest extends BasicProjectRequest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
this.buildProperties.getMaven().put("project.build.sourceEncoding",
|
|
||||||
() -> "UTF-8");
|
|
||||||
this.buildProperties.getMaven().put("project.reporting.outputEncoding",
|
|
||||||
() -> "UTF-8");
|
|
||||||
this.buildProperties.getVersions().put(VersionProperty.of("java.version"),
|
this.buildProperties.getVersions().put(VersionProperty.of("java.version"),
|
||||||
this::getJavaVersion);
|
this::getJavaVersion);
|
||||||
if ("kotlin".equals(getLanguage())) {
|
if ("kotlin".equals(getLanguage())) {
|
||||||
|
@@ -495,6 +495,10 @@ public class InitializrConfiguration {
|
|||||||
*/
|
*/
|
||||||
public static class Maven {
|
public static class Maven {
|
||||||
|
|
||||||
|
private static final String DEFAULT_PARENT_GROUP_ID = "org.springframework.boot";
|
||||||
|
|
||||||
|
private static final String DEFAULT_PARENT_ARTIFACT_ID = "spring-boot-starter-parent";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Custom parent pom to use for generated projects.
|
* Custom parent pom to use for generated projects.
|
||||||
*/
|
*/
|
||||||
@@ -519,8 +523,20 @@ public class InitializrConfiguration {
|
|||||||
*/
|
*/
|
||||||
public ParentPom resolveParentPom(String bootVersion) {
|
public ParentPom resolveParentPom(String bootVersion) {
|
||||||
return (StringUtils.hasText(this.parent.groupId) ? this.parent
|
return (StringUtils.hasText(this.parent.groupId) ? this.parent
|
||||||
: new ParentPom("org.springframework.boot",
|
: new ParentPom(DEFAULT_PARENT_GROUP_ID,
|
||||||
"spring-boot-starter-parent", bootVersion));
|
DEFAULT_PARENT_ARTIFACT_ID, bootVersion));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if the specified {@link ParentPom} is the default spring boot starter
|
||||||
|
* parent.
|
||||||
|
* @param parentPom the parent pom to check
|
||||||
|
* @return {@code true} if the {@code parentPom} is the spring boot starter
|
||||||
|
* parent
|
||||||
|
*/
|
||||||
|
public boolean isSpringBootStarterParent(ParentPom parentPom) {
|
||||||
|
return DEFAULT_PARENT_GROUP_ID.equals(parentPom.getGroupId())
|
||||||
|
&& DEFAULT_PARENT_ARTIFACT_ID.equals(parentPom.getArtifactId());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -384,7 +384,9 @@ public class ProjectGeneratorTests extends AbstractProjectGeneratorTests {
|
|||||||
@Test
|
@Test
|
||||||
public void defaultMavenPomHasSpringBootParent() {
|
public void defaultMavenPomHasSpringBootParent() {
|
||||||
ProjectRequest request = createProjectRequest("web");
|
ProjectRequest request = createProjectRequest("web");
|
||||||
generateMavenPom(request).hasSpringBootParent(request.getBootVersion());
|
generateMavenPom(request).hasSpringBootParent(request.getBootVersion())
|
||||||
|
.hasNoProperty("project.build.sourceEncoding")
|
||||||
|
.hasNoProperty("project.reporting.outputEncoding");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -395,7 +397,8 @@ public class ProjectGeneratorTests extends AbstractProjectGeneratorTests {
|
|||||||
applyMetadata(metadata);
|
applyMetadata(metadata);
|
||||||
ProjectRequest request = createProjectRequest("web");
|
ProjectRequest request = createProjectRequest("web");
|
||||||
generateMavenPom(request).hasParent("com.foo", "foo-parent", "1.0.0-SNAPSHOT")
|
generateMavenPom(request).hasParent("com.foo", "foo-parent", "1.0.0-SNAPSHOT")
|
||||||
.hasBomsCount(0);
|
.hasBomsCount(0).hasProperty("project.build.sourceEncoding", "UTF-8")
|
||||||
|
.hasProperty("project.reporting.outputEncoding", "UTF-8");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -410,7 +413,8 @@ public class ProjectGeneratorTests extends AbstractProjectGeneratorTests {
|
|||||||
.hasProperty("spring-boot.version", "1.5.17.RELEASE")
|
.hasProperty("spring-boot.version", "1.5.17.RELEASE")
|
||||||
.hasBom("org.springframework.boot", "spring-boot-dependencies",
|
.hasBom("org.springframework.boot", "spring-boot-dependencies",
|
||||||
"${spring-boot.version}")
|
"${spring-boot.version}")
|
||||||
.hasBomsCount(1);
|
.hasBomsCount(1).hasProperty("project.build.sourceEncoding", "UTF-8")
|
||||||
|
.hasProperty("project.reporting.outputEncoding", "UTF-8");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
<kotlin.version>1.1.1</kotlin.version>
|
<kotlin.version>1.1.1</kotlin.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
<kotlin.version>1.1.1</kotlin.version>
|
<kotlin.version>1.1.1</kotlin.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
<kotlin.version>1.1.1</kotlin.version>
|
<kotlin.version>1.1.1</kotlin.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<foo.version>1.3.3</foo.version>
|
<foo.version>1.3.3</foo.version>
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>11</java.version>
|
<java.version>11</java.version>
|
||||||
<kotlin.version>1.1.1</kotlin.version>
|
<kotlin.version>1.1.1</kotlin.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
<description>Demo project for Spring Boot</description>
|
<description>Demo project for Spring Boot</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
||||||
<java.version>1.8</java.version>
|
<java.version>1.8</java.version>
|
||||||
<spring-bar.version>0.2.0.RELEASE</spring-bar.version>
|
<spring-bar.version>0.2.0.RELEASE</spring-bar.version>
|
||||||
<spring-foo.version>0.1.0.RELEASE</spring-foo.version>
|
<spring-foo.version>0.1.0.RELEASE</spring-foo.version>
|
||||||
|
Reference in New Issue
Block a user