欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

程序员文章站 2022-03-08 17:36:16
...

软件版本信息:目前最新的Gradle6.5.1 + JDK11 + idea2020.1.2

官方建议JDK的版本是8或以上

1 Gradle的下载和配置

1 下载Gradle(官方链接

2 将下载好的压缩包解压到任意目录。并在此目录下新建一个目录.gradle,此目录名可任取,位置也可任意。

为了使用方便,我将其放在了解压Gradle的目录中。这个目录相当于maven中的仓库目录,以后下载的依赖都会放到这里。
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

3 为Gradle添加环境变量。打开控制面板,按下图方式添加环境变量,添加完成之后一直点击确定离开。注意:设置此环境变量之前请确认已经为jdk添加环境变量
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

名:GRADLE_USER_HOME
值(安装Gradle时新建的目录路径,视自己情况而定):g:\ProgramFiles\gradle-6.5.1\.gradle\

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

4 打开cmd或powershell,验证是否成功添加环境变量(要重启电脑才能使新添加的环境变量设置生效
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2 用Gradle创建普通java项目

2.1.1 创建工程

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2.1.2 更改三个Gradle设置

Gradle user home:我们在安装Gradle时指定的环境变量GRADLE_USER_HOME的值。

  • 如果没有新建.gradle这个目录,这里的默认值为 C:\Users\username\.gradle
  • 如果新建.gradle这个目录,但没有设置环境变量,以后每次用Gradle构建工程,都要手动修改此处的值
  • 如果新建.gradle这个目录并设置了环境变量GRADLE_USER_HOME,idea就能自动探测此处Gradle user home的值了

下面两个和图示一样即可。
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2.1.3 更换阿里云的镜像,提升包的下载速度

阿里云官方镜像站

repositories {
    //    添加阿里云镜像
    maven { url 'https://maven.aliyun.com/repository/public/' }
    mavenCentral()
}

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2.1.4 找回缺失的src目录

创建工程后,发现没有src目录,按下图设置即可

// 创建缺失的src目录
task "create-dirs" {
    sourceSets*.java.srcDirs*.each {
        it.mkdirs()
    }
    sourceSets*.resources.srcDirs*.each {
        it.mkdirs()
    }
}

// 创建缺失的src目录
task createDirs {
    sourceSets*.java.srcDirs*.each{
        it.mkdirs()
    }
    sourceSets*.resources.srcDirs*.each{
        it.mkdirs()
    }
}

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2.1.5 项目运行

src/main/java目录下新建一个包,再建一个类
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2.2 Gradle添加依赖

这里以lombok为例

1 为idea下载lombok插件(已经配置过插件的可以跳过这步)
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

2 为项目添加lombok依赖

打开maven官方仓库,按名称搜索lombok插件,选择一个版本
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

//此处添加依赖
dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    // https://mvnrepository.com/artifact/org.projectlombok/lombok
    compile group: 'org.projectlombok', name: 'lombok', version: '1.18.12'
}

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

3 项目运行

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
新建一个Person类测试运行
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

package test;

import lombok.*;

@AllArgsConstructor
@ToString
public class Person {
    private String name;
    private String address;
    private char sex;

    public static void main(String[] args) {
        Person person = new Person("Greenspan", "China", 'M');
        System.out.println(person);
    }
}

3 用Gradle创建SpringBoot项目

http://start.aliyun.com
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目

package com.example.gradle_springboot.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
    @GetMapping("/hello")
    public String hello() {
        return "Hello SpringBoot & Gradle";
    }
}

IDEA使用Gradle创建一个简单的java项目 & SpringBoot项目
两点说明:

说明一:关于下载

初次使用Gradle创建项目,本机明明已经下载了Gradle,可是建完之后还是会下载Gradle,这个不用管,让其下载完就好,这是项目构建需要,这次下完之后,以后创建项目就不会再下载了。

刚开始使用Gradle,很多依赖都没有添加过,下载可能会花一些时间,下载之后这些依赖会缓存在本机上(本机存储目录:GRADLE_USER_HOME,此环境变量值没修改的话,默认为C:\users\***\.gradle;修改过的话就是自己指定的目录),已经缓存到本机上的依赖新项目中引入就不会再次下载了。若是依赖下载很慢的话,可以更换maven仓库地址,具体参见下述说明二

说明二:关于build.gradle

此文件内容可能会略有差异,下面是我的,以作参考

plugins {
    id 'org.springframework.boot' version '2.3.0.RELEASE'
    id 'io.spring.dependency-management' version '1.0.9.RELEASE'
    id 'java'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

// 指定仓库地址
repositories {
    // 指定阿里云镜像(根据需要添加)
    // maven { url 'https://maven.aliyun.com/repository/public/' }
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation('org.springframework.boot:spring-boot-starter-test') {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }
}

test {
    useJUnitPlatform()
}

相关标签: JavaEE