上一篇介绍了如何安装 Gradle,现在就可以直接通过已经安装好的 Gradle 创建一个普通 Java 项目

Gradle 默认内建了一个 init 插件,可以生成 Java 项目基础结构

$ gradle init --type <name>

其中的 name 可以是以下值

  • java-application
  • java-library
  • scala-library
  • groovy-library
  • basic

这篇文章使用 java-application,先创建一个文件夹用来保存即将编写的项目代码

$ mkdir java-demo
$ cd java-demo

创建项目

在 java-demo 文件夹内,执行 gradle init 任务,创建一个新 Java 项目

$ gradle init --type java-application
Starting a Gradle Daemon (subsequent builds will be faster) BUILD SUCCESSFUL in 3s
2 actionable tasks: 2 executed

gradle init 执行成功之后的目录结构如下:

├── build.gradle
├── gradle
│   └── wrapper
│   ├── gradle-wrapper.jar
│   └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── src
├── main
│   └── java
│   └── App.java
└── test
└── java
└── AppTest.java

先忽略其他文件,直达目的地,看一下 gradle 自动生成的 App.java 代码

/*
* This Java source file was generated by the Gradle 'init' task.
*/
public class App {
public String getGreeting() {
return "Hello world.";
} public static void main(String[] args) {
System.out.println(new App().getGreeting());
}
}

非常单纯的功能,只是打印 Hello world. 字符串

编译项目

现在有 2 种方式来编译这个示例项目

  1. 通过本机安装好的 gradle 命令编译
  2. 通过当前项目根目录下的 gradlew 命令编译(官方推荐的使用方式)

这两种方式有什么不同,用第 gradlew 命令种方式有什么好处,我会单独写一篇文章进行介绍

$ ./gradlew build

BUILD SUCCESSFUL in 2s
7 actionable tasks: 7 executed

运行项目

由于一开始指定 --type java-application 创建项目,所以现在可以直接通过命令行运行该项目

通过执行 ./gradlew tasks 命令可以查看有哪些任务可以供==当前项目==执行

$ ./gradlew tasks

------------------------------------------------------------
All tasks runnable from root project
------------------------------------------------------------ Application tasks
-----------------
run - Runs this project as a JVM application ... 省略其他自带的任务

可以看到 Application tasks 列出了一个 run 任务,直接执行看下是什么结果

$ ./gradlew run

> Task :run
Hello world. BUILD SUCCESSFUL in 0s
2 actionable tasks: 1 executed, 1 up-to-date

成功的输出了 Hello world. 也就是执行了 src/main/java/App.java 的 main 方法

来看一下 build.gradle

plugins {
id 'java' id 'application'
} mainClassName = 'App' ... 省略

由于这个配置文件告诉了 gradle 该项目的入口是 src/main/java/App.java

所以执行 ./gradlew run 命令的时候就会打印 Hello world.

至此,我们简单的、粗略的完成了如何使用 Gradle 新建一个 Java 项目,并进行编译、执行

这篇文章还有几个文件、文件夹没有介绍到,如下:

├── gradle
│   └── wrapper
│   ├── gradle-wrapper.jar
│   └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat

关于 gradlew (Gradle Wrapper) 的内容将会另开一篇介绍

更多内容查看 Gradle 官方文档 Building Java Application

原文出处:http://www.xiegangd.com/article/153483978582311

使用 Gradle 快速创建 Java 项目的更多相关文章

  1. 使用Gradle自动创建Java项目结构

    D:\N3verL4nd\Desktop\java>tree 卷 本地磁盘 的文件夹 PATH 列表 卷序列号为 00000200 0006:08B0 D:. ├─.gradle │ ├─3.4 ...

  2. 2springboot:快速创建springboot项目

    使用IDEA快速创建springboot项目流程: 创建新的项目选择 项目的命名以及包名 需要什么包就导入什么包 进行测试的单元 <dependency> <groupId>o ...

  3. Java开发环境的搭建以及使用eclipse从头一步步创建java项目

    一.java 开发环境的搭建 这里主要说的是在windows 环境下怎么配置环境. 1.首先安装JDK java的sdk简称JDK ,去其官方网站下载最近的JDK即可..http://www.orac ...

  4. IntelliJ IDEA创建java项目

    IntelliJ IDEA创建java项目 进入到IntelliJ IDEA启动界面,点击Create New Project 2.这样就进入到了创建项目页面,这里可以创建好多项目,这里我们以java ...

  5. 一、IntelliJ IDEA创建java项目

    一.IntelliJ IDEA创建java项目 二.IntelliJ IDEA下载并包含jdbc包 1.下载zip格式的驱动包:https://dev.mysql.com/downloads/conn ...

  6. 使用Maven创建Java项目

    在本教程中,我们将向你展示如何使用 Maven 来创建一个 Java 项目,导入其到Eclipse IDE,并打包 Java 项目到一个 JAR 文件. 所需要的工具: Maven 3.3.3 Ecl ...

  7. Maven学习(十)-----使用Maven创建Java项目

    所需要的工具: Maven 3.3.3 Eclipse 4.2 JDK 8 注意:请确保 Maven 是正确安装和配置(在Windows,*nix,Mac OSX系统中),然后再开始本教程,避免 mv ...

  8. 使用IDEA创建java项目(hello word)

    前提:已安装好jdk,配置好环境变量.我使用的是java 8. 首先在自己的D盘下建一个文件夹,用来存放我们待会新建的项目,我创建了IdeaProject: 1,第一步打开idea 第二步选择创建ja ...

  9. Eclipse 创建 Java 项目

    打开新建 Java 项目向导 通过新建 Java 项目向导可以很容易的创建 Java 项目.打开向导的途径有: 通过点击 "File" 菜单然后选择 New > Java P ...

随机推荐

  1. Spring MVC处理

    1.首先,用户发送请求,DispatcherServlet会拦截请求,但DispatcherServlet收到请求后不进行处理,而对URL进行解析得到相应的URI(资源标识符). 2.Dispatch ...

  2. JSP基础--九大内置对象

    JSP九大内置对象 Object findAttribute(String name):依次在page.request.session.application范围查找名称为name的数据,如果找到就停 ...

  3. knn 数据集准备

    """ Created on Mon Aug 26 20:57:24 2019 @author: huoqs knn algorithm ""&quo ...

  4. 移动端web整理 移动端问题总结,移动web遇到的那些坑

    meta基础知识 H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 忽略将页面中的数字识别为电话号码 忽略Android平台中对邮箱地址的识别 当网站添加到主屏幕快速启动方式,可隐藏地址栏,仅针对i ...

  5. 06 CAS的原理和AQS

    CAS的原理 CAS(compareAndSwap),比较交换,是一种无锁的原子算法. Cas(value,expect,newValue),如果vaule和ecpect一样,就更新为newValue ...

  6. 并行开发 8.用VS性能向导解剖你的程序

    原文:8天玩转并行开发——第八天 用VS性能向导解剖你的程序 最后一篇,我们来说说vs的“性能向导",通常我们调试程序的性能一般会使用Stopwatch,如果希望更加系统的了解程序,我们就需 ...

  7. ROLLBACK - 退出当前事务

    SYNOPSIS ROLLBACK [ WORK | TRANSACTION ] DESCRIPTION 描述 ROLLBACK 回卷当前事务并取消当前事务中的所有更新. PARAMETERS 参数 ...

  8. 一、asp的写法

    一.asp的写法  vs从来都不支持asp,但是可以用vscode写,好多年前写asp的时候,用的是dreamwaver,asp还有创建项目这一说法?调试搭个iis就行了   <html> ...

  9. 一、WebFrom 图片上传

    一.代码实现了简单的图片上传功能(改一下也可以上传其他的),没有做图片大小和格式的判断,主要是熟悉fileupload控件 前台代码: <%@ Page Language="C#&qu ...

  10. Java的常用类库

    Java类库概念 Java的应用程序接口(API)以包的形式来组织,每个包提供了大量的相关类.接口和异常处理类,这些包的集合就是Java类库. 包名以java开始的包是Java核心包:包名以javax ...