使用Gradle建立一个Java项目

  下载Gradle: http://www.gradle.org/downloads.解压后,将gradle-1.8\bin加入系统环境的path中。运行测试:

:help

Welcome to Gradle 1.8.

To run a build, run gradle <task> ...

To see a list of available tasks, run gradle tasks

To see a list of command-line options, run gradle --help

BUILD SUCCESSFUL

Total time: 2.675 secs

  首先创建一个gradle项目目录,然后在其目录下运行:

gradle tasks

出现结果:

:tasks

== All tasks runnable from root project

== Build Setup tasks
setupBuild - Initializes a new Gradle build. [incubating]
wrapper - Generates Gradle wrapper files. [incubating]

== Help tasks
dependencies - Displays all dependencies declared in root project 'gs-gradle'.
dependencyInsight - Displays the insight into a specific dependency in root project 'gs-gradle'.
help - Displays a help message
projects - Displays the sub-projects of root project 'gs-gradle'.
properties - Displays the properties of root project 'gs-gradle'.
tasks - Displays the tasks runnable from root project 'gs-gradle'.

To see all tasks and more detail, run with --all.

BUILD SUCCESSFUL

Total time: 3.077 secs

虽然这样可以让任务可用,但是如果没有build.gradle也没有多大价值,当然随着你的项目插件任务增多,通过这个命令查看哪些任务可用。

   建立一个build.gradle文件,第一行输入:

apply plugin: 'java'

这简单一行带来很大变化,再次运行gradle tasks,你就会看到很多任务,包括构建项目,创建JavaDOC和运行测试。

当然我们经常使用的还是下面这个命令,能够将你的项目打包成jar:

gradle build

 

   到目前为止,我们的gradle目录下还没有Java源码,可以使用Eclipse创建一个Java项目,也可以手工创建一个Java项目,主要是建立一个放置源码的目录:src,然后创建一个src/main/java/hello,如果是windows操作系统,在命令行键入:

mkdir src\main\java\hello

如果是linux系统,键入:

mkdir -p src/main/java/hello

创建一个Java类src/main/java/hello/HelloWorld.java

package hello;

public class HelloWorld {
   public static void main(String[] args) {
      System.out.println("hello");
    }
}

然后,再回到src上级目录下输入gradle build,这时会发现编译成功信息,与src平行多出build目录,这个目录下有三个目录:

  • classes. 项目编译的 .class 文件

  • reports.构建的报告 包括测试报告.

  • libs. 生成的组装的库包 ( JAR and/or WAR 文件).

我们项目的jar包就在这个libs目录下了

 

依赖

  使用gradle解决我们项目需要的依赖包是主要目的,我们通常可以在http://mvnrepository.com/寻找到依赖包的gradle写法,如键入jdonframework,得到结果:http://mvnrepository.com/search.html?query=jdonframework

点按进去以后,选择最新版本,再选择gradle,如下图:

得到'org.jdon:jdonframework:6.8'

我们就要在build.gradle文件中加入:

repositories { mavenCentral() }
dependencies {
  compile "org.jdon:jdonframework:6.8"
}

  这里的第一行表示的构建应该从Maven的中央存储库寻找解决它的依赖。gradle非常依赖于Maven构建工具许多惯例和设施,包括使用Maven中央作为库的依赖源。

  dependencies中定义的是一个编译依赖,表示在编译时可用,如果构建WAR文件, 那么依赖包将被构建到war文件的 /WEB-INF/libs目录。

  这样,在我们项目程序中,使用该库包的类以后,gradle就能够编译打包。

  下面我们可以在HellowWorld代码中使用依赖来测试一下。

package hello;

import com.jdon.util.UtilValidate;

public class HelloWorld {
  public static void main(String[] args) {
     String s ="hello";
     if (!UtilValidate.isEmpty(s))
        System.out.println("hello");
  }
}

再次运行gradle build,会发现正常编译构建了。

 

Web项目

  使用web开发项目,只需要在\src\main下建立一个webapp即可,webapp下包含WEB-INF/web.xml,在build.gradle中加入

apply plugin: 'war'

再运行:

gradle war

打包成war文件,可以在build/libs目录下发现。

为了兼容中文注释等,需要加入UTF-8

tasks.withType(Compile) {
  options.encoding = "UTF-8"
}

整个项目源码在github下载。https://github.com/banq/getting-started-with-jdon

从Ant导入Gradle的Build

如何开发一个Servlet应用

安卓开发起步Helloworld

针对.NET程序员的Java基础指南

JVM内存模型和性能优化

Jdon框架

JavaEE7教程