在Android Studio项目中,默认的远程仓库为jcenter,如果在项目引用了一些类库,Gradle构建程序的时候会将这些依赖类库从jcenter网站下载到本地,如我们在 build.gradle使用了以下依赖:

dependencies {
compile 'de.hdodenhof:circleimageview:2.1.0'
}

下载的地址为:https://jcenter.bintray.com/de/hdodenhof/circleimageview/2.1.0/

本地缓存地址为:C:\Users\xxx(用户名)\.gradle\caches\modules-2\files-2.1\de.hdodenhof\circleimageview\2.1.0

这三个目录依次存放文件circleimageview-2.1.0.pom,circleimageview-2.1.0.aar,circleimageview-2.1.0-sources.jar

如果没有网络或我们设置Gradle为offline模式时,Gradle就会使用这些缓存文件,不再连接jcenter去获取这些依赖包

很多公司的办公网络,考虑到安全,保密等因素,是不允许连接到外网或无法访问到jcenter,那么这时候如何在内网使用Gradle构建Android程序呢?这是个棘手的问题啊,难道让我放弃心爱的butterknife,RxJava...?难道让我复制一堆jar包到libs目录下?

聪明的程序员显然是不会这么做的,研究了一下,发现在内网环境下,我们依然可以很愉快的使用Gradle构建Android项目

此处假设外网电脑A,内网电脑B,如我们需要在项目中使用circleimageview,那么将A中缓存的circleimageview类库复制到B中Android SDK extras目录下对应的目录即可,

即将A中缓存的circleimageview-2.1.0.pom,circleimageview-2.1.0.aar,circleimageview-2.1.0-sources.jar文件复制到B中xxx(android sdk目录)\extras\m2repository\de\hdodenhof\circleimageview\2.1.0目录下

如果我们在项目中使用了butterknife,如下:

dependencies {
compile 'com.jakewharton:butterknife:8.4.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
}

那么我们在内网中如何使用butterknife呢?由于butterknife项目引用了javapoet,auto-common,auto-service类库,我们也需要把这些类库放到extras目录下

 

在内网使用Gradle构建Android Studio项目的更多相关文章

  1. Android Studio项目Gradle内网配置

    由于内网无法连接到外部网络,在使用Gradle编译Android Studio项目时就会面临一些问题: 1.Gradle安装文件无法下载 2.Gradle Android插件无法下载 3.项目依赖文件 ...

  2. Android Studio项目结构

    我们创建了一个Android Project,打开就如下图所示:  我们选择Project视图,就会有以下的项目文档结构:  上面笔者标注的数字是接下来要讲解的内容. 我们先来看1: 我们创建Appl ...

  3. 使用Gradle构建Android项目

    阅读目录 Gradle是什么? 环境需求 Gradle基本结构 任务task的执行 基本的构建定制 目录配置 签名配置 代码混淆设置 依赖配置 输出不同配置的应用 生成多个渠道包(以Umeng为例) ...

  4. Android studio 使用Gradle发布Android开源项目到JCenter 总结

    1.注册账号 先到https://bintray.com注册一个账号.  这个网站支持 github 账户直接登录的 2.获取  bintray.user  和 bintray.apikey      ...

  5. 用Gradle 构建android程序

    前言 android gradle 的插件终于把混淆代码的task集成进去了,加上最近,android studio 用的是gradle 来构建项目, 下定决心把android gralde 构建项目 ...

  6. 如何在Android Studio项目中导入开源库?

    前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不 ...

  7. Android零基础入门第15节:掌握Android Studio项目结构,扬帆起航

    原文:Android零基础入门第15节:掌握Android Studio项目结构,扬帆起航 经过前面的学习,Android Studio开发环境已准备OK,运行Android应用程序的原生模拟器和Ge ...

  8. Android Studio项目转Eclipse项目

    Android Studio项目的目录结构和Eclipse项目不同.如何转换? 以FloatingAction 项目为例:实现向上滑动隐藏悬浮按钮,向上滑动显示悬浮按钮. GitHub 地址:http ...

  9. [转]使用Gradle发布Android开源项目到JCenter

      转自:http://blog.csdn.net/maosidiaoxian/article/details/43148643 使用Gradle发布Android开源项目到JCenter 分类: G ...

随机推荐

  1. springboot(十六):springboot整合shiro

    数据库有五张表(userInfo,uerrole,role,rolepermission,permission) userInfo(id,username,password) userrole(uid ...

  2. DataTabe使用Linq实现 Group

    DataTable dt = dataSet.Tables[]; var query = from t in dt.AsEnumerable() group t by new { t1 = t.Fie ...

  3. 微信小程序开发(6) SSL证书及HTTPS服务器

    1. 域名 在万网购买,略 2. 云服务器 阿里云购买,略 3. 安装lnmp 使用lnmp.org程序,略 4. 申请证书 阿里云-管理控制台-安全(云盾)-证书服务-购买证书证书类型: 免费型DV ...

  4. udp_client函数

    #include <netdb.h> #include <stdlib.h> #include <string.h> #include <sys/socket ...

  5. Nginx正反向代理、负载均衡等功能实现配置

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   系统环境: VirtualBox Manager Centos6.4 nginx1.10.0 IP对应的机器名: IP ...

  6. 2016-2017-2 20155324实验二《Java面向对象程序设计》实验报告

    2016-2017-2 20155324实验二<Java面向对象程序设计>实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉 ...

  7. 20155324 2016-2017-2 《Java程序设计》第4周学习总结

    20155324 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承 面对对象中,子类继承父类,避免重复定义行为就使用继承.在Java中,继承时使用exte ...

  8. pyqt5-顶层窗口特定操作-图标和标题和不透明度

    图标: setWindowIcon(QIcon("resource/header_icon.png"))     设置窗口图标 icon=QIcon(r'大象.png')      ...

  9. python概念(一)python基本数据类型

    http://www.cnblogs.com/nulige/p/6115765.html

  10. Struts2 REST 插件 XStream 远程代码执行漏洞 S2-052 复现过程

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...