Code for BAEL-1812 (#4432)

* Thin jar option for Spring Boot bootstrap and gradle projects.

* .gitignore for spring-boot-gradle project.

* Maven and Gradle 'thin' Boot builds (optional)

* Rename 'wrapper' to 'thin' and shorten some lines of code to fit the article.
This commit is contained in:
Alessio Stalla
2018-06-08 22:47:00 +02:00
committed by maibin
parent 3e2d544144
commit aaa9202883
5 changed files with 72 additions and 5 deletions
+2
View File
@@ -0,0 +1,2 @@
.gradle/
build/
+26 -3
View File
@@ -1,12 +1,16 @@
buildscript {
ext {
springBootVersion = '2.0.0.RELEASE'
springBootPlugin = 'org.springframework.boot:spring-boot-gradle-plugin'
springBootVersion = '2.0.2.RELEASE'
thinPlugin = 'org.springframework.boot.experimental:spring-boot-thin-gradle-plugin'
thinVersion = '1.0.11.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
classpath("${springBootPlugin}:${springBootVersion}")
classpath("${thinPlugin}:${thinVersion}")
}
}
@@ -14,6 +18,8 @@ apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
//add tasks thinJar and thinResolve for thin JAR deployments
apply plugin: 'org.springframework.boot.experimental.thin-launcher'
group = 'org.baeldung'
version = '0.0.1-SNAPSHOT'
@@ -23,7 +29,6 @@ repositories {
mavenCentral()
}
dependencies {
compile('org.springframework.boot:spring-boot-starter')
testCompile('org.springframework.boot:spring-boot-starter-test')
@@ -42,3 +47,21 @@ bootJar {
// attributes 'Start-Class': 'org.baeldung.DemoApplication'
// }
}
//Enable this to generate and use a pom.xml file
apply plugin: 'maven'
//If you want to customize the generated pom.xml you can edit this task and add it as a dependency to the bootJar task
task createPom {
def basePath = 'build/resources/main/META-INF/maven'
doLast {
pom {
withXml(dependencyManagement.pomConfigurer)
}.writeTo("${basePath}/${project.group}/${project.name}/pom.xml")
}
}
//Uncomment the following to use your custom generated pom.xml
bootJar.dependsOn = [createPom]
//Enable this to generate and use a thin.properties file
//bootJar.dependsOn = [thinProperties]
@@ -1,6 +1,6 @@
#Tue Feb 06 12:27:20 CET 2018
#Fri Jun 01 20:39:48 CEST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.5.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-4.5.1-all.zip