• Gradle4.4记录笔记


    Gradle相关目录

    ├─gradle
    │ ├── build.gradle
    │ └── src
    ├── gradle
    │ └── wrapper
    │ ├── gradle-wrapper.jar
    │ └── gradle-wrapper.properties
    ├── gradlew
    ├── gradlew.bat
    └── settings.gradle

    gradle-wrapper.properties

    这是首先考虑的 本项目使用什么版本gradle的控制文件

    distributionBase=GRADLE_USER_HOME//这个Base地址和下面的Path拼接起来就是下载的zip文件解压地址
    distributionPath=wrapper/dists
    zipStoreBase=GRADLE_USER_HOME//这个Base地址和下面的Path拼接起来就是下载后的gradle文件的存放地址
    zipStorePath=wrapper/dists
    distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.1-bin.zip//本项目需要的gradle文件,显示了版本
    

    gradle-wrapper.jar

    这个就是用于下载指定版本gradle的jar,它会去gradle-wrapper.properties查询变量然后带入执行

    build.gradle

    作用类似pom文件

    buildscript {
    //声明是gradle脚本自身需要使用的资源
        repositories {
        //代表使用哪个依赖仓库
            maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
            jcenter()
        }
        dependencies {
        //这是一个插件用于打包程序
            classpath "com.github.jengelman.gradle.plugins:shadow:2.0.2"
        }
    }
    //shadow插件引用
    apply plugin: "com.github.johnrengelman.shadow"
    apply plugin: 'java'
    //跟编译环境有关 Java1.8
    sourceCompatibility = '1.8'
    
    repositories {
        maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
        jcenter()
    }
     //代表使用哪个依赖仓库
    dependencies {
    //老版本使用compile  ,新版本使用implementation和api
    //是取代之前的compile的,其中api和compile是一样的效果,implementation有所不同,通过implementation依赖的库只能自己库本身访问,
        compile "io.vertx:vertx-core:$VERTX_VER"
        compile "io.vertx:vertx-web:$VERTX_VER"
        compile "ch.qos.logback:logback-classic:${LOGBACK_VER}"
    }
    
    //正常情况下,gradle构建的jar包是不包含依赖的,只包含项目源码
    //可是有些情况下我们希望JAR包中也包含相关依赖,就要使用这个
    shadowJar {
        baseName = 'mes-im'
        classifier = null
        version = null
        manifest {
        //设置jar的manifest 文件
        // 'Main-Class' 指定入口函数
            attributes 'Main-Class': 'io.vertx.core.Launcher'
            //我使用vertx框架,需要指定Main-Verticle为主vert
            attributes 'Main-Verticle': 'MainVerticle'
        }
        mergeServiceFiles {
            include 'META-INF/services/io.vertx.core.spi.VerticleFactory'
        }
    }
    
    

    三级目录

  • 相关阅读:
    ubuntu添加环境变量
    排序算法(基于c++)
    43、集合的第一大类:Set
    一个很少见但很有用的SQL功能
    Spring-AOP配置(注解及多方整合案例)
    数据恢复方法有哪些?如何恢复误删照片
    Java实现一个简单的GitHub仓库信息爬取
    206、SpringBoot 整合 RabbitMQ 的自动配置类 和 对应的属性处理类 的知识点
    基于Echarts实现可视化数据大屏电子商务公共服务平台大数据中心
    [网鼎杯2018]Unfinish-1|SQL注入|二次注入
  • 原文地址:https://blog.csdn.net/qq_36934489/article/details/127068456