gradle构建样例

从一个构建工程中了解gradle的基本概念
构建工具中的元素

构建文件
构建的输入和输出
构建引擎
依赖管理器

参考 gradle实战的案例
https://github.com/bmuschko/gradle-in-action-source

一个好用的gradle插件
https://github.com/townsfolk/gradle-templates

插件:
gradle 构建一个javaweb项目

在构建文件build.gradle中
    apply plugin: 'java'
gradle build 是java插件提供的任务,在默认的项目目录下执行编译,运行测试,组装jar文件。

添加辅助信息例如:
        apply plugin: 'java'
        apply plugin: 'maven'

        group = 'com'
        version = '0.0.1-SNAPSHOT'

        description = """ums"""

        sourceCompatibility = 1.8
        targetCompatibility = 1.8

        tasks.withType(JavaCompile) {
            options.encoding = 'UTF-8'
        }

项目约定的配置属性
java项目约定的项目布局
src/main/java
/resources
src/test/java
/resource

倘若没有按照固定的目录,那么可以在build文件中指定编译目录
    /**
     * 自定义项目编译目录,均是当前build文件的相对路径
     */
    sourceSets{
        main{
        java{
            srcDirs=['src']
        }
        }
        test{
        java{
            srcDirs=['test']
        }
        }
    }

    buildDir = 'out';

配置依赖

    repositories {

        maven { url "http://repo.maven.apache.org/maven2" }
        mavenLocal();
    }

    dependencies {
        compile group: 'org.apache.poi', name: 'poi-ooxml', version:'3.9'
        compile group: 'org.apache.logging.log4j', name: 'log4j-api', version:'2.7'
        compile group: 'org.apache.logging.log4j', name: 'log4j-core', version:'2.7'
        compile group: 'org.apache.commons', name: 'commons-lang3', version:'3.5'
        compile group: 'org.apache.httpcomponents', name: 'httpclient', version:'4.5.3'
        ......
    }
gradle 构建和运行javaWeb项目,可以使用war插件和jetty插件。
war插件扩展自java插件,为web应用部署和组装war添加了约定和支持。
javaweb项目约定的布局

    build.gradle
    src/main/java
    src/main/webapp

web项目在构建时需要外部依赖,运行时需要。
//todo
dependencies{
    providedCompile 'javax.servlet:servlet-api:2.5'
    runtime 'javax.servlet:jstl:1.1.2'
}

java Web项目目录定制
例如:
    build.gradle
    src/main/java
    static/css
    webfiles/WEB-INFO/web.xml
    webfiles/jsp/
那么,可以在build文件中如下设置:
```
//指定war包的目录
webAppDirName = 'webfiles'

//指定包含war的路径
war{
    from 'static'
}

“`
添加jetty插件
apply plugin: ‘jetty’
apply from: ‘https://raw.github.com/akhikhl/gretty/master/pluginScripts/gretty.plugin

如果如上的第一条语句报错,jettyy插件无法找到,那么可以选择第二条语句,下载gretty插件。

定制jetty插件的属性,例如端口号,上下文等。

jettyRUn{
    httpPort = 9090
    contextPath='zums';
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值