zoukankan      html  css  js  c++  java
  • Gradle 依赖管理

    依赖管理(在 build.gradle 中):

    1、定义依赖仓库(repositories):

    Gradle 要求至少定义一个依赖仓库,依赖仓库可以是文件系统,也可以是中心服务器。最常用的是 jcenter 和 mavenCentral。

    2、申明依赖(dependencies):

    和 Maven 类似,依赖的坐标直接为:group、name、version。此外,引入不同的插件会引入不同的依赖配置类别。

    依赖坐标可以简写(用 : 分隔):

    'org.apache.commons:commons-lang3:3.8.1'

    3、项目的依赖类型:

    • 外部模块依赖:刚才的外部仓库
    • 项目依赖:一个项目依赖另一个项目。如:compile project(':projectB')。
    • 文件依赖:依赖本地文件

    4、依赖的下载:

    当执行 build 命令时,gradle 就会去配置的依赖仓库中下载对应的 Jar,并应用到项目中。

    5、依赖配置类型:

    在 dependency 前面可指明其依赖类型,可选(和 Maven 的 scope 标签类似)。Java 插件提供了 6 种现成的类型:

    • compile:编译过程中必须依赖的类库
    • runtime:运行时必须(编译时不需要)
    • testCompile:编译测试时需要
    • testRuntime:运行测试时需要
    • archives:如果项目在编译过程中,有 jar 文件生成,则包含

    6、将依赖打包进 jar:如果需要让编译出来的 jar 直接可以运行,可以考虑将依赖库全部,或者部分打包进 jar。

    在 jar 配置项中,配置包含内容的来源即可:

    // HelloWorld.java
    package com.rainsia.hello;
    
    import org.apache.commons.lang3.StringUtils;
    
    public class HelloWorld {
        public static void main(String[] args) {
            System.out.println(StringUtils.capitalize("hello world!"));
        }
    }
    
    // build.gradle 中
    dependencies {
        compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.1'
    //    archives "org.apache.commons:commons-lang3:3.1"
    }
    
    jar {
        from {
            configurations.compile.collect {
                it.isDirectory() ? it : zipTree(it)
            }
        }
        manifest {
            attributes 'Main-Class': 'com.rainsia.hello.HelloWorld'
        }
    }
  • 相关阅读:
    Java接口(interface),扫盲贴
    Java抽象类,扫盲贴
    Java类的继承、super关键字、复写
    Java内部类,扫盲贴
    数据结构学习笔记1--简单排序
    7.1 通用的职责分配软件原则 GRASP原则一: 创建者 Creator
    6.6 面向对象设计
    6.5 开始进入设计 … Transition to Design
    6.4 操作契约 Operation Contracts
    6.3 契约式设计
  • 原文地址:https://www.cnblogs.com/quanxi/p/10510142.html
Copyright © 2011-2022 走看看