1.安装Gradle

下载地址https://gradle.org/install。笔者使用的Gradle下载地址链接: http://pan.baidu.com/s/1gf9qyC7 密码: u3k6。注意Gradle要求jdk1.7或更高

下载后的zip包如下

  wKioL1lArpmgfBbDAAAFj4Vu10A378.png

将zip包解压,在F盘新建一个Gradle目录(新建目录的位置自定义)用来放置解压后的文件夹,然后将gradle-3.5文件夹复制到F:\Gradle下

  wKioL1lAt-iyqpubAAAMz0FUt64458.png

配置Gradle环境变量,在系统环境变量path中追加F:\Gradle\gradle-3.5\bin;指向Gradle的bin目录,然后点击确定

CMD运行gradle -version,如出现以下截图中的内容说明安装成功


wKiom1lAuDmhKhuoAAASBfEDTjg928.png

2.安装Gradle插件


在Eclipse中选择Help -> Eclipse Marketplace...,输入buildship点击Go,然后选择Install安装Gradle插件


wKioL1lAuGKBYmxiAADe6oUVkVk322.png


安装完成后重启Eclipse。选择Window -> Preferences 选择Gradle。设置Gradle的缓存目录,指向Gradle的安装目录(可自定义缓存目录)


  wKioL1lAuLHzRtLSAACyH4M57AQ807.png


3.开发Web应用程序

在Eclipse中新建Gradle Project。选择JavaEE视图


  wKiom1lAuTry3d4bAAAwlYheUPM763.png



New -> Other ,选择Gradle Project


  wKioL1lAuVzSrnImAACZAeYxcmE452.png



选择Next


  wKioL1lAuZWyN0-KAAC7dAEtVeI362.png


输入项目名称,然后选择Next


  wKiom1lAubuC2-jKAACdYxbziM4709.png


选择Gradle的安装目录然后点击Finish


  wKioL1lAu8eBbkN6AACij5x50C4583.png


新建的Gradle项目结构如下。其中build.gradle是Gradle项目的主配置文件,我们只需要修改这个配置文件即可


  wKioL1lAu_fidB5UAAAz2ZNfQh0091.png


先将Gradle Project 转换成Web项目。右击项目选择Properties,然后选择Project Facets


  wKioL1lAvHnSxgzRAADx72-fQ_Q782.png



会自动添加WebContent目录


  wKiom1lAvXeS77m6AAAz1f6p0Sg674.png


  

在src下的main下面新建webapp目录,然后将WebContent下的文件夹复制过去并新建index.jsp,在index.jsp中输入内容index,然后将WebContent目录删除。结构如下


  wKioL1lAvcSxzOOPAAATukjP75o415.png



打开build.gradle文件,其中一些基本的配置以及给我们生成好了


  wKiom1lAvfDC7mo0AACVbeCdpNM138.png



为了编译Kotlin我们需要Kotlin插件,将如下配置复制到build.gradle中

buildscript {
    ext.kotlin_version = '1.1.2'
 
    repositories {
        jcenter()
    }
 
    dependencies {
        classpath
"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}
 
apply plugin: 'kotlin'

同时需要java插件和war包插件

apply plugin: 'java'
apply plugin: 'war'

配置Kotlin的依赖库

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}

为了开发web应用程序我们还需要JavaEE类库

providedCompile group: 'javax', name: 'javaee-api', version: '7.0'

这里我们使用内嵌的tomcat来运行应用程序,所以需要tomcat插件,添加如下配置

dependencies {
    def tomcatVersion = '7.0.68'
    
    tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}",  
           "org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}",  
           "org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}"
}

使用tomcat插件

apply plugin: 'com.bmuschko.tomcat'

完整配置如下

buildscript {
    ext.kotlin_version = '1.1.2'
 
    repositories {
        mavenCentral()
    }
 
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.bmuschko:gradle-tomcat-plugin:2.2.2'
    }
}
// Apply the java-library plugin to add support for Java Library
apply plugin: 'java-library'
apply plugin: 'kotlin'
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'com.bmuschko.tomcat'
 
// In this section you declare where to find the dependencies of your project
repositories {
    // Use jcenter for resolving your dependencies.
    // You can declare any Maven/Ivy/file repository here.
    mavenCentral()
}
 
dependencies {
    // Use JUnit test framework
    testImplementation 'junit:junit:4.12'
    
    providedCompile group: 'javax', name: 'javaee-api', version: '7.0'
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
dependencies {
    def tomcatVersion = '7.0.68'
    
    tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}",  
           "org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}",  
           "org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}"
}


选择项目右击选择Gradle -> Refresh Gradle Project,然后进行等待片刻


  wKioL1lAwIixgiEsAAA9cOKP7bU735.png


此时kotlin-stadlib、javaee-api都已经引入到classpath中


Kotlin插件默认使用src/main/kotlin作为源代码目录,如果不使用默认约定则应配置sourceSets

sourceSets {
    main.kotlin.srcDirs += 'src/main/myKotlin'
    main.java.srcDirs += 'src/main/myJava'
}

选择项目新建一个source目录命名为src/main/kotlin用来存放Kotlin源代码


  wKioL1lAwYezHxzRAAAn9mtRXFA589.png


选择Kotin视图可快速新建Kotlin Class


  wKioL1lAxL3S0BfkAABukWpO9yo975.png


新建完成后会自动添加Kotlin依赖


  wKiom1lAxOSxIz8oAAA2VgVShG0694.png


在HelloWorld.kt中编写如下代码

package com.test.servlet
 
import javax.servlet.http.HttpServlet
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
import javax.servlet.annotation.WebServlet
 
@WebServlet("/helloworld")
class HelloWorld : HttpServlet(){
    override fun doGet(req: HttpServletRequest, resp: HttpServletResponse) {
        println("enter the doGet method");
        resp.writer.write("Hello, World")
    }
}

4.运行应用程序



在JavaEE视图中右击项目选择Run as -> Run Configurations,选择Gradle Project,然后选择New


  wKioL1lAxVPxbDDkAAEk5VFDwVM941.png

  wKioL1lAxXOj7UC6AAElH8T9_aY836.png


点击Apply然后点击Run,等到片刻后如Console控制台上出现以下字样说明启动成功


  wKiom1lAxaDg5aR2AAAX-0qo4H8038.png


将http://localhost:8080/Gradle复制到浏览器地址栏


  wKioL1lAxdqRsSBmAAAOYueXeI8900.png


输入Servlet的访问路径http://localhost:8080/Gradle/helloworld


   wKiom1lAxf7yAaZkAAARXekKbbw281.png