今天听只是分享,听到不用maven而使用Gradle构建,就尝试了下
Java三大构建工具:Ant、Maven和Gradle
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。
它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。
支持的语言有Java、Groovy和Scala
1.安装
解压,配置环境变量path
eg:将 E:\baby\software\gradle-5.3.1\bin 加入path
验证是否安装好
用命令窗口
gradle -v
2.新建Gradle项目
(1)通过start.spring.io
A.下载 https://start.spring.io/
B.将下载的包解压,命名为gradle-demo,进入gradle-demo
C.测试,输出hello
c1.修改build.gradle
plugins { id 'org.springframework.boot' version '2.1.4.RELEASE' id 'java' } apply plugin: 'io.spring.dependency-management' group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '1.8' repositories { mavenCentral() } dependencies { compile('org.springframework.boot:spring-boot-starter') compile('org.springframework.boot:spring-boot-starter-web') testCompile('org.springframework.boot:spring-boot-starter-test') }
c2.在gradle-demo\src\main\java\com\example\demo\controller下新增HelloController.java
package com.example.demo.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { @RequestMapping("/hello") public String hello() { return "Hello Gradle!"; } }
c3.执行构建命令
gradle build
默认编译生成的文件在build/libs目录下
c4.执行
java -jar gradle-demo-0.0.1-SNAPSHOT.jar
浏览器输入localhost:8080,浏览器输出
浏览器输入localhost:8080/hello,浏览器输出
D.导入IntelliJ IDEA
使用IntelliJ IDEA,比较高效,一次还是导入IntelliJ IDEA方便后续开发
File->Open
open as project
gradle home选择本地
(2)IntelliJ IDEA直接创建
A.File——》New——》Project
一直Next直到Finish
B.新增package——controller
新增 HelloController.java
package com.example.gradle.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HelloController { @RequestMapping("/hello") public String hello() { return "Hello Gradle,this is IntelliJ IDEA created!"; } }
目录结构如下
C.运行
浏览器输入localhost:8080,浏览器输出
说明:
我的IntelliJ IDEA 是2017.3.
发生错误 Cause: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl.getModuleIdentifier()Lorg/gradle/api/artifacts/ModuleIdentifier;
查了下原因是gradle版本导致的
gradle-wrapper.properties里指定的是gradle-5.2.1-bin.zip,换成gradle-4.10.3
File——》Settings
重新build就可以了