plugins{ id 'java' //这是个java项目,由于gradle能够构建多种语言项目 id 'org.springframework.boot' version '2.1.3.RELEASE' } apply plugin: 'io.spring.dependency-management' group 'com.study.wzy' version '1.0-SNAPSHOT' sourceCompatibility = 1.8 jar { // 打jar包的配置 baseName = 'mytest' version = '0.0.1' manifest { attributes "Manifest-Version": 1.0, 'Main-Class': 'com.study.wzy.GradletestApplication' } } repositories { //maven资源库配置 mavenLocal() //优先使用本地库,win下能够跟maven共用,mac os下未找到如何配置共用 mavenCentral() } configurations { compileOnly { //仅在编译时依赖,此处为lombok使用,相关注解在编译时生成getter、setter等 extendsFrom annotationProcessor } } dependencies { //依赖jar包,每一个jar包坐标包含三个基本元素:group,name,version annotationProcessor 'org.projectlombok:lombok:1.18.6' compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '2.1.3.RELEASE' testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: '2.1.3.RELEASE' testCompile group: 'junit', name: 'junit', version: '4.12' //testCompile 表示做用域 }
运行idea右边gradle下的build,能够生成jar包,java -jar xxx.jar 进行运行,能够访问:html
示例代码:java
@Service public class TestService { public String getName(){ return "jack"; } }
@RequestMapping("/test") @RestController @SpringBootApplication public class GradletestApplication { public static void main(String[] args) { SpringApplication.run(GradletestApplication.class, args); } @Autowired private TestService testService; @RequestMapping("/mytest") public String mytest(){ return "hello " + testService.getName(); } }
rootProject.name = 'zzzgradletest' includeFlat 'zzzservicetest'
compile project(':zzzservicetest')