快速创建一个 SpringBoot的Gradle工程
环境配置:
jdk 8
Gradle 3.5
测试环境
$java -version
java version "1.8.0_141"
Java(TM) SE Runtime Environment (build 1.8.0_141-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.141-b15, mixed mode)
$gradle -v
------------------------------------------------------------
Gradle 3.5
------------------------------------------------------------
Build time: 2017-04-10 13:37:25 UTC
Revision: b762622a185d59ce0cfc9cbc6ab5dd22469e18a6
Groovy: 2.4.10
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_141 (Oracle Corporation 25.141-b15)
OS: Windows 10 10.0 amd64
构建(第一次可能需要更长时间)
$gradle build
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:findMainClass
:jar
:bootRepackage
:assemble
:compileTestJava UP-TO-DATE
:processTestResources NO-SOURCE
:testClasses UP-TO-DATE
:test UP-TO-DATE
:check UP-TO-DATE
:build
BUILD SUCCESSFUL
构建完成文件夹内会生成一个build文件夹,有/build/libs/*.jar文件,
用
$java -jar build/libs/demo-0.0.1-SNAPSHOT.jar
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.18.RELEASE)
......
来运行。
因为项目没有控制器等,localhost:8080会报404
Gradle配置文件
demo 文件夹目录树
+- gradle
+- wrapper
+- gradle-wrapper.jar
+- gradle-wrapper.properties
+- src
+- main
+- java
+- com
+- example
+- demo
+- DemoApplication.java
+- resources
+- static
+- templates
+- application.properties
+- test
+- java
+- com
+- example
+- demo
+- DemoApplicationTests.java
+- .gitignore
+- build.gradle
+- gradlew
+- gradlew.bat
-
build.gradle
buildscript { ext {//定义动态属性 springBootVersion = '1.5.18.RELEASE'//指定springboot版本 } repositories { //mavenCentral()//maven中央仓库,可指定 maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } } dependencies {//依赖 classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")//使用动态属性 } } apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'org.springframework.boot' group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = 1.8 repositories { //mavenCentral() maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } }//仓库 dependencies {//依赖 implementation('org.springframework.boot:spring-boot-starter-web') testImplementation('org.springframework.boot:spring-boot-starter-test') }
采用阿里云的中央仓库能加快构建速度。
-
gradle/wrapper/gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-3.5.1-bin.zip
可通过
wrapper
文件夹的文件统一配置。通过
$gradlew bulid
将配置文件里指定的
.zip
文件下载下来。 -
src/ …
spring工程文件
HelloController
添加控制器
@RestController
public class HelloController{
@RequestMapping("/hello")
public String hello() {
return "Hello World!";
}
}
即可在localhost:8080/hello看到
Hello World!