Gradle之旅-使用gradle+eclipse构建web项目

    在前一篇博文中我们成功的搭建好了eclipse+gradle环境,那么接下来就开始使用eclipse+gradle构建web项目吧。

    我们先打开eclipse新建一个动态web项目,到设置webcontent时将webcontent改为webroot(这只是个人喜好,可以不用修改,也可以修改为其他目录,gradle默认的是/src/main/webapp,但是我个人不是很喜欢这样的目录结构,所以我会在gradle的构建文档中定义默认的webcontent目录),创建好web项目后我们在src下添加两个包,mian和test,mian下面和test下面分别添加两个java和resources包,这样的目录结构也是gradle的默认结构。然后我们在项目的根目录下新建一个build.gradle文件,添加以下内容,内容中已有注释,应该能看懂。

import org.gradle.plugins.ide.eclipse.model.Facet

//定义要使用的插件
apply plugin: "base"
apply plugin: "java"
apply plugin: "war"
apply plugin: "jetty"
apply plugin: "eclipse-wtp"
apply plugin: "eclipse"

sourceCompatibility = "1.8"   // 设置 JDK 版本
webAppDirName = "webroot"    // 设置 WebApp 根目录

// 设置 Java 源码所在目录
sourceSets.main.java.srcDirs "src/java"
sourceSets.main.resources.srcDirs "src/resources"

//定义jar包仓库
repositories {  
     
     //使用maven2仓库
    mavenCentral()
    
    //定义从本地的lib文件夹中寻找依赖的jar包
    flatDir {
        dirs "lib"
    }
    
}

//定义依赖
dependencies {
    
    //定义版本
    def mybatisSpringVersion = "1.2.3"
    def springVersion        = "4.2.2.RELEASE"
    def junitVersion         = "4.12"
    def mybatisVersion       = "3.3.0"  
   

    //依赖定义的格式解释:“依赖分组名称:依赖名称:依赖版本“

    //定义编译时必须有的依赖

    compile (
    
        //spring
        "org.springframework:spring-context:$springVersion",
        "org.springframework:spring-webmvc:$springVersion",
        "org.springframework:spring-jdbc:$springVersion",
        "org.springframework:spring-tx:$springVersion",
    
        //mybatis
        "org.mybatis:mybatis-spring:$mybatisSpringVersion",
        "org.mybatis:mybatis:$mybatisVersion"
        
    )
    
    //定义编译测试时必须有的依赖
    testCompile (
    
        //junit
        "junit:junit:$junitVersion"
        
    )
    
    //定义运行时必须有的依赖
    //runTime (
        
    //)
    
    //定义测试运行时必须有的依赖
    //testRunTime (
    
    //)
    
  }
 
  // 设置 Project Facets
eclipse {
    wtp {
        facet {
            facet name: 'jst.web', type: Facet.FacetType.fixed
            facet name: 'wst.jsdt.web', type: Facet.FacetType.fixed
            facet name: 'jst.java', type: Facet.FacetType.fixed
            facet name: 'jst.web', version: '2.5'
            facet name: 'jst.java', version: '1.8'
            facet name: 'wst.jsdt.web', version: '1.0'
        }
    }
}
 
//定义任务将下载的jar包拷贝到webroot/WEB-INF的lib文件夹下
task copyJars(type: Copy) {
  from configurations.compile
  into "webroot/WEB-INF/lib"
}


    build.gradle文件修改完成后在项目上右键点击Configure下的Convert to gradle project转换为gradle项目,当转换完成后项目的目录结构会发生变化,到此使用eclipse+gradle构建web项目就算完成了。

    提示:依赖可以到maven2的仓库中搜索,地址是:https://repo1.maven.org/maven2/org/

本文出自 “技术不宅” 博客,转载请与作者联系!

你可能感兴趣的:(gradle)