zoukankan      html  css  js  c++  java
  • gradle本地、远程仓库配置

    本地仓库配置

    配置环境变量GRADLE_USER_HOME,并指向你的一个本地目录,用来保存Gradle下载的依赖包。

     

    远程仓库配置

    一般Gradle、maven从中央仓库mavenCentral() http://repo1.maven.org/maven2/下载依赖包,但是在国内下载速度巨慢,我们只能使用国内的镜像。
    所以每个Gradle构建的项目中,我们可以在build.gradle做如下配置

    repositories {
    maven {
    url 'http://maven.aliyun.com/nexus/content/groups/public/'
    }
    mavenCentral()
    }

    每个项目都如此配置难免麻烦些,我们可以配置一个全局配置文件。

    .gradleinit.gradle
    allprojects{
        repositories {
            def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'
            all { ArtifactRepository repo ->
                if(repo instanceof MavenArtifactRepository){
                    def url = repo.url.toString()
                    if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {
                        project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
                        remove repo
                    }
                }
            }
            maven {
                url REPOSITORY_URL
            }
        }
    }

    init.gradle简介

    init.gradle文件在build开始之前执行,所以你可以在这个文件配置一些你想预先加载的操作
    例如配置build日志输出、配置你的机器信息,比如jdk安装目录,配置在build时必须个人信息,比如仓库或者数据库的认证信息,and so on.

    启用init.gradle文件的方法:
    1、在命令行指定文件,例如:gradle –init-script yourdir/init.gradle -q taskName.你可以多次输入此命令来指定多个init文件
    2、把init.gradle文件放到USER_HOME/.gradle/ 目录下.
    3、把以.gradle结尾的文件放到USER_HOME/.gradle/init.d/ 目录下.
    4、把以.gradle结尾的文件放到GRADLE_HOME/init.d/ 目录下.

    如果存在上面的4种方式的2种以上,gradle会按上面的1-4序号依次执行这些文件,如果给定目录下存在多个init脚本,会按拼音a-z顺序执行这些脚本
    类似于build.gradle脚本,init脚本有时groovy语言脚本。每个init脚本都存在一个对应的gradle实例,你在这个文件中调用的所有方法和属性,都会
    委托给这个gradle实例,每个init脚本都实现了Script接口

    下面的例子是在build执行之前给所有的项目制定maven本地库,这个例子同时在 build.gradle文件指定了maven的仓库中心,注意它们之间异同

    build.gradle

    repositories {
        mavenCentral()
    }
    
    task showRepos << {
        println "All repos:"
        println repositories.collect { it.name }
    }

    init.gradle

    allprojects {
        repositories {
            mavenLocal()
        }
    }


    在命令行输入命令

    gradle –init-script init.gradle -q showRepos

    输出为:

    > gradle --init-script init.gradle -q showRepos
    All repos:
    [MavenLocal, MavenRepo]

    常用仓库列表

    repositories {  
        mavenCentral()  
        maven { url "https://jitpack.io" }  
        maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }  
        maven { url 'http://maven.oschina.net/content/groups/public/' }   
        maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }   
        maven { url "http://maven.springframework.org/release" }   
        maven { url "http://maven.restlet.org" }   
        maven { url "http://mirrors.ibiblio.org/maven2" }  
        maven {  
            url "http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/"  
        }  
        maven { url 'https://maven.fabric.io/public' }  
        jcenter()  
        google()  
    }  



  • 相关阅读:
    深入理解iOS开发中的锁
    整理:iOS开发算法资料
    (二)ELK Filebeat简介
    (一)ELK 部署
    zabbix + grafana 展示
    (二)LVS介绍
    (一)集群介绍
    zabbix 监控 ESXI
    zabbix proxy 安装
    zabbix fping 监控网络质量
  • 原文地址:https://www.cnblogs.com/lenmom/p/10364743.html
Copyright © 2011-2022 走看看