Android项目依赖和私服搭建

本篇从最基本依赖 使用的演化到 私服搭建

其中前面大家都会, 为展示演化流程完整性添加上,会的就直接略过,往下看私服搭建, 不足之处 望批评指正。

1.什么是依赖

  1. 项目A需要使用项目B中已经完成的功能,类和方法
  2. 业务代码中需要使用已经封装好的库
  3. 库或框架中需要使用别的库或者框架中已经有的功能

2.为什么需要依赖管理

写程序的本质是一个抽象的过程,功能和业务需要分离
一个项目中往往需要大量的库或者功能,需要统一的管理
如果不加以控制,项目将会越来越混乱。

3.Android目前最好的依赖工具Gradle

Gradle 是一个基于Apache Ant 和 Apache Maven概念的项目自动化构建工具。
Gradle是以Groovy语言为基础,面向Java应用为主
Google默认并推荐使用Gradle

引入方式之一

1.切换Project 视图
2.新建libs目录
3.拷贝jar包
4.add as library

这里写图片描述

拷贝jar包

这里写图片描述

原始 gradle文件的dependencies

这里写图片描述

选中拷贝的jar包 右键选择 add as library

这里写图片描述

Add to module 添加提示 选中app

这里写图片描述

选择后dependencies 会增加一条我们新加的依赖
compile files(‘libs/universal-image-loader-1.9.3.jar’)

这里写图片描述

引入方式二、

1.import module.
2.Project Structure
3.选中相应的Module
4.module dependency

Android中有时依赖需要依赖 图片,字符串,布局等资源文件,不能打成jar包,我们可以打成arr 或者 module依赖

1.新建Module

这里写图片描述

2.选中Android Library

这里写图片描述

3.填写lib名字

这里写图片描述

4. 我们看到此model已经在此Project视图下

这里写图片描述

5.我们打开依赖视图 选择app 选中Dependencies

这里写图片描述

点击+号 , 添加我们的库依赖

这里写图片描述

这里写图片描述

我们看到我们的视图下已经添加了我们新引入库的依赖。 所有的依赖都能看到

这里写图片描述

我们点击Build 默认就会给我们生成arr文件。

第二种方式的扩展

我们直接依赖aar.

1.获取aar
我们新建一个Android Library 并编写我们需要的工具类,build之后会生成arr文件。
我们也可以直接拷贝别人提供给我们的arr文件。

2.将生成的arr拷贝到libs目录下。
这时我们通过依赖视图或者右键都不能找到入口
3.添加依赖配置
1).在gradle下面增加代码配置如下

android {
  ....
  repositories {
        flatDir{
            dirs 'libs'
        }
    }
  ....
}

2).并且在gradle下的dependencies添加如下配置


dependencies {
...
    compile(name:'loglibrary-debug', ext:'aar')
...
}

这是添加loglibrary-debug.aar的实例。然后同步gradle 就可以依赖成功。

这里写图片描述

引入方式三(推荐)

一、找到相应的build.gradle
二、compile(jcenter. mavencenter. mavenlocal)
三、通过Nexus搭建私服

jCenter,是一个代码库,相当于一个公共的存储控件,简单的来讲就是你把你写好的aar文件及一些文档描述文件之类的东西打包上传到jCenter服务器上,其他人就可以通过jCenter服务器下载到你上传的包了。
网址 https://bintray.com/bintray/jcenter
譬如 compile ‘com.android.support:appcompat-v7:25.3.1’
找到 External Libraries目录下的appcompat-v7:25.3.1’的包 随便打开一个类,拷贝其路径。就会显示其位置如下:
/Users/jiang/.android/build-cache/10b63ae0b2889ca954aa343c2e545627a2b8a719/output/jars/classes.jar!/android/support/v7/appcompat/BuildConfig.class

这是我们第一次配置时从网络端下载的包存放到本地。当我们第二次使用的时候就不需要重复的去下载。


allprojects {
    repositories {
        jcenter()
    }
}

这样的好处显而易见, 当我们想要升级某个依赖或者某个库的时候仅仅只需要更改版本号就可以啦。
前面几种方式的弊端在于每次升级要删除原有的包,再拷贝新的包,再更改依赖配置

例如我们想引入最流行的框架Retrofit我们去官网 http://square.github.io/retrofit/找到其依赖信息直接拷贝即可

compile 'com.squareup.retrofit2:retrofit:(insert latest version)'
compile 'com.squareup.retrofit2:retrofit:2.3.0'

这里写图片描述

另外一种 就是利用AndroidStudio自带的搜索工具去搜索添加

这里写图片描述

上面的流程基本都会使用,又写了一下 重点来啦

下面主要说明如何获取Nexus私服搭建 http://www.sonatype.org

这里写图片描述

点击后进入这个网址 https://support.sonatype.com/hc/en-us

这里写图片描述
选择 Download Nexus Repository Manager3 进入下面的网址

https://support.sonatype.com/hc/en-us/articles/218637467-Download-Nexus-Repository-Manager-3

这里写图片描述

这个版本的安装版下载地址
OSX installer: http://download.sonatype.com/nexus/3/nexus-3.0.1-01-mac.dmg

下载后

这里写图片描述

点击安装

这里写图片描述

我们打开后
这里写图片描述

用户名 admin 密码 admin123

然后创建自己的用户 下图为示例

这里写图片描述

然后登陆自己的账号

创建自己的仓库

这里写图片描述

选择仓库类型 推荐mave2 (hosted)

这里写图片描述

输入仓库等配置信息, 如图为其中一种信息推荐

这里写图片描述

然后仓库就创建完毕

这里写图片描述

创建仓库告一段落 有点和svn 和 git 管理异曲同工之处。 然又不尽相同。

下面开始上传我们的arr库 到 服务仓库

上传和引用已编译的model到搭建的私服
allprojects {
    repositories {
        jcenter()

        mavenLocal()  // 告诉AndroidStudio 我们使用 mavenLocal啦
    }

AndroidStudio 有的没有进行智能提示 一些代码我们可以保存在笔记里面 直接拷贝

格式如下, url 地址为我们的仓库地址
30.96.100.168 是本地ip地址 Windows 用ipconfig 查询 Mac用 ifconfig 查询
userName: “JiangGe” 账号名字
password : “xxxx” 账号密码

仿下面进行配置

// 定义我们的上传行为
uploadArchives {
    repositories.mavenDeployer {
        // 仓库地址
        repository(url: "http://30.96.100.168:8081/repository/com.jiang.jianglib/") {
            // 仓库账号密码
            authentication(userName: "JiangGe" , password : "xxxx")

            pom.version = "0.0.1"  // 版本号
            pom.artifactId = "jianglib" // lib标识
            pom.groupId = "com.jiang"  // groupId
        }
    }
}
 gradle 上添加 apply plugin: 'maven'
apply plugin: 'maven'

然后我们同步Gradle

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

然后我们新建一个工程 按下图进行配置

这里写图片描述


allprojects {

    repositories {
        maven {

            url "http://30.96.100.168:8081/repository/com.jiang.jianglib/"
        }
    }
}

配置当前的版本

    // 按照此格式  路径 : 库 : 版本
    compile 'com.jiang:jianglib:0.0.1'

然后点击同步,就会出现一个下载的过程。
然后我们的依赖资源库就有了我们新增的依赖

试验一下代码

这里写图片描述

有了我们的依赖提示。

内容不足之处望批评指正

如有疑问和建议可发邮箱zhangdanjiang_java@163.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值