使用gradle构造Java工程

简介: 大家学习一个新工具,第一步一般是在自己的机器上手动安装其。 打开工作空间,新建目录结构如下: └── src └── main └── java └── hello  之所以要这样,是因为gradle的Java插件默认扫描这样的目录来查找Java代码。

大家学习一个新工具,第一步一般是在自己的机器上手动安装其。

打开工作空间,新建目录结构如下:

└── src
    └── main
        └── java
            └── hello

 之所以要这样,是因为gradle的Java插件默认扫描这样的目录来查找Java代码。

 

hello是我们的包,在里面新建Java类。比如:

package hello;
import org.joda.time.LocalTime;
public class HelloWorld {
  public static void main(String[] args) {
    LocalTime currentTime = new LocalTime();
    System.out.println(currentTime);
    Greeter greeter = new Greeter();
    System.out.println(greeter.sayHello());
  }
}

 和

package hello;

public class Greeter {
  public String sayHello() {
    return "Hello world!";
  }
}

 

 

接下来新建gradle配置文件build.gradle:

apply plugin: 'java'

repositories {
    mavenCentral()
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

dependencies {
    compile "joda-time:joda-time:2.2"
}

jar {
    baseName = 'gs-gradle'
    version =  '0.1.0'
}

 第一行申明使用Java插件。因为gradle不是只支持Java,其他很多语言也可以通过gradle构建。所以gradle没有默认使用Java插件。

后面申明使用maven的库,后面是代码版本,然后是依赖申明,这里为了演示,使用了joda。后面是构建为jar包的配置,构建后jar的名称就是gs-gradle-0.1.0.jar。

 

现在在根目录(也就是build.gradle的目录)执行

gradle build

 就会看到结果。

然后我们继续。

打开buidl.gradle文件,在最下面增加一个任务:

task wrapper(type: Wrapper) {
    gradleVersion = '2.3'
}

 保存后执行

gradle wrapper

 你会发现生成了不少新东西,比如gradlew。这些东西类似于绿色版gradle下载器。所以如果是团队合作开发,只要大家都从版本控制服务器下载了你那个buidl.gradle,大家执行的结果就一样。

然后我们执行

gradlew build

 它会开始下载相应版本的gradle(版本就是上面task wrapper指定的),然后自动构建。

 

这个时候,如果你兴高采烈的跑去执行

gradlew run

 ,会发现不可以。

为了让jar包能执行,我们继续修改build.gralde:

apply plugin: 'application'

mainClassName = 'hello.HelloWorld'

 应用了application插件,并指明了主类。

然后执行gradle run,就可以正常输出了。

目录
相关文章
|
6月前
Java-异常:构造三角形
Java-异常:构造三角形
39 0
|
3月前
|
XML Java 项目管理
java maven 和gradle哪种好
java maven 和gradle哪种好
82 0
|
1月前
|
Java Maven
Maven【2】( Web 工程依赖 Java 工程)(命令行操作)
Maven【2】( Web 工程依赖 Java 工程)(命令行操作)
20 0
|
6月前
|
Cloud Native Java Go
解决 Spring Boot 和 Gradle Java 版本兼容性问题:A problem occurred configuring root project ‘demo1‘. > Could n
解决 Spring Boot 和 Gradle Java 版本兼容性问题:A problem occurred configuring root project ‘demo1‘. > Could n
398 0
|
2月前
|
Java Docker 容器
百度搜索:蓝易云【Docker使用之java项目工程的部署】
通过以上步骤,你已经成功在Docker中部署了Java项目工程。这样可以确保你的应用在不同环境中具有一致的运行结果,并且方便地进行部署和管理。
36 7
|
3月前
|
Java
【JAVA杂货铺】一文带你走进面向对象编程|构造方法调用 | 代码块分类| 期末复习系列 | (中3)
【JAVA杂货铺】一文带你走进面向对象编程|构造方法调用 | 代码块分类| 期末复习系列 | (中3)
18 0
|
8月前
|
存储 Java 数据库
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(中)
Java-对象的操作(构造、初始化、封装)、static成员以及代码块(中)
39 1
|
4月前
|
Java 编译器 开发者
【Java构造方法】构造方法重载,缺省构造器,案例,使用方法及重要知识点
【Java构造方法】构造方法重载,缺省构造器,案例,使用方法及重要知识点
|
4月前
|
Java API Spring
spring的安装 -- IEDA-创建 Java 工程的jar包教程--以及spring5的核心组件
spring的安装 -- IEDA-创建 Java 工程的jar包教程--以及spring5的核心组件
52 0
spring的安装 -- IEDA-创建 Java 工程的jar包教程--以及spring5的核心组件
|
4月前
|
Java
105. 从前序与中序遍历序列构造二叉树 --力扣 --JAVA
给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。
29 1