zoukankan      html  css  js  c++  java
  • Maven实现android组件化开发<狠简单>

      灵感来自前段时间和我一个朋友吃饭,说道他们公司当前组件化开发流程。

      1、Nexus安装配置流程

      实现该组件化开发需要Nexus工具,下载地址可以如下:

    https://www.sonatype.com/download-oss-sonatype

      下载对应的版本的Nexus,这里我下载的如下图

      下载之后直接解压然后到指定的目录下启动该Nexus仓库即可,我的相对目录如下:(仅供参考)

    nexus-2.14.5-02-bundle
    exus-2.14.5-02injswwindows-x86-64

       在该目录下执行如下start-nexus.bat直接启动仓库即可。

      

      然后在浏览器访问http://localhost:8081/nexus进入到如下图:

       欢迎界面如上图,可以点击右上角login按钮,默认Nexus的账号和密码分别是admin admin123,输入账号密码完成登录如下图:

      点击add->HostedRepositories,然后如下图:

       这里需要填写Repository IDRepository Name,然后就是Deployment Policy这里尽量选择Allow Redeploy,否则同版本不允许重新(覆盖)发布,最后点击保存即可。

      2、Android Stuido项目创建AAR文件并且提交到仓库

      实现流程如下:

      第一步创建Android Module

        New -> Android Module -> Android Library

      第二步配置Module的build.gradle

        1、在该文件最顶部添加如下:    

    apply plugin: 'maven'

        2、文件中添加如下:

    uploadArchives {
        configuration = configurations.archives
        repositories.mavenDeployer {
            /*远程仓库的地址,貌似有具体ip的基本上都是建在局域网的仓库*/
            repository(url: "http://localhost:8081/nexus/content/repositories/android/") {/*仓库地址*/
                authentication(userName: "admin",/*用户名*/
                        password: "admin123")/*密码*/
            }
    
            pom.project {
                name 'testvideo-library'    /*项目的名称*/
                packaging 'aar'         /*要提交文件的类型*/
                description '测试视频组件定义'     /*描述*/
                url "http://localhost:8081/nexus/content/repositories/android/"/*仓库地址*/
                groupId "com.test.testvideo"  /*注册sonatype账号时有填,这里是域名反转+项目名*/
                artifactId "video"
                version '1.0.0'
            }
        }
    }

      第三步:添加代码到仓库指定位置

        实现方式一:命令行方式

          在项目的根目录下执行如下命令:gradlew uploadArchives

         实现方式二:工具

          打开项目右上角gradle面板  

            点击如下图所示指定module下需要添加的aar文件到仓库

     

           批注:这里说明下aar文件生成路径build/outputs/aar,这里建议每次修改提交前执行Rebuild Project。

        

        3、主Moudle引用AAR文件

          主项目根build.gradle文件添加本地仓库地址:

    repositories{
            mavenCentral()
            maven {
                url "http://localhost:8081/nexus/content/repositories/android/"
            }
        }

          主项目build.gradle文件顶部添加如下:

            apply plugin: 'maven'
          然后在dependencies下添加引用
          
    compile 'com.test.testvideo:video:1.0.0@aar'
       说明:AAR文件是Android自己特有的包,包含src目录文件和res目录文件,这里会涉及合并res文件(包含清单文件和drawable文件等,所以对明明规范就有了更高一步的要求)

      如上所有步骤实现则可以直接在主Module中直接调用对应的AAR文件里的Activity文件。这也就是实现了对应的组件化开发。囧....
      
  • 相关阅读:
    表单全选,不选和反选
    利用js改变宽,高等属性
    点击显示与隐藏
    改变div的不同属性
    给三个不同的div变色
    经典排序算法实现
    基本排序算法的实现
    排序的概念及分类实现
    #和##运算符实例
    #pragma预处理实例
  • 原文地址:https://www.cnblogs.com/liemng/p/7544355.html
Copyright © 2011-2022 走看看