Android Studio使用gradle向Maven私服提交

本文详细介绍了如何将开发好的通用组件提交至Maven私服,并在内部项目中进行使用。主要分为四步:配置gradle.properties文件,修改build.gradle文件设置上传参数,执行发布任务以及在项目中引用已提交的组件。

如何搭建Maven私服请参考别的文章介绍,主要是nexus下载和安装部署,本日记只记录如何向Maven私服提交。 一般我们开发的通用组件,如果在A项目中使用,可以直接使用引入代码的方式;如果B项目也希望使用同样的组件功能,可以把A使用的代码拷贝一份给B,但是不是最合理的方式,而且会存在通用组件随着功能演化版本不统一的情况,这时候Maven的有点就体现出来了:可以把开发好的通用组件提交到Maven服务器上,内部项目以后使用的时候,直接在gradle的‘dependencies’中添加一行依赖即可。

####第一步: 在项目的根目录下修改gradle.properties,添加如下的配置:

MAVEN_REPO_RELEASE_URL=http://172.16.4.112:8081/nexus/content/repositories/releases/
MAVEN_REPO_SNAPSHOT_URL=http://172.16.4.112:8081/nexus/content/repositories/snapshots/

#对应maven的GroupId的值
GROUP = common
#登录nexus ossde的用户名
NEXUS_USERNAME=myusername

#登录nexus oss的密码
NEXUS_PASSWORD=password
# groupid
GROUP_ID = common
# type
TYPE = aar
# description
DESCRIPTION = 写点此组件的描述.
复制代码

####第二步: 修改待提交模块的build.gradle文件,

uploadArchives {
    configuration = configurations.archives
    repositories {
        mavenDeployer {
            snapshotRepository(url: MAVEN_REPO_SNAPSHOT_URL) {
                authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
            }
            repository(url: MAVEN_REPO_RELEASE_URL) {
                authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
            }
            pom.project {
                version '1.0.2'
                artifactId 'aria-lib'
                groupId 'com.arialyy.aria'
                packaging TYPE
                description DESCRIPTION
            }
//            pom.groupId = 'com.duoku.sdk.download'
//            pom.artifactId = 'aria2-lib'
//            pom.version = '1.0.0'

        }
    }
}
复制代码

####第三步: 在代码开发结束,测试验证通过,觉得可以作为一个版本发布时,就可以执行提交任务了。 打开Android studio的Gradle标签,找到待发布的module,会出现upload组,下面有一个任务名叫:uploadArchives,双击该任务名称即可发布到Maven服务器。

####第四步: 到前面三步,如果都顺利的话,其实我们的组件已经发布到Maven服务器。这一步主要是引用Maven上已提交的库,即对组件的使用。 需要修改项目的build.gradle文件,增加我们自己Maven服务器的地址,例如:

maven {
    url 'http://172.16.4.112:8081/nexus/content/repositories/jcenterp/'
}
复制代码

然后在具体使用该组件的module的build.gradle文件中添加对该组件的引用后重新sync一下gradle,会发现我们前面提交的gradle已经拉下来了。

#android studio3.0上使用implementation和api替代以前的compile指令了
implementation 'com.android.support:appcompat-v7:26.1.0'
#或者
api 'com.android.support:appcompat-v7:26.1.0'
复制代码

转载于:https://juejin.im/post/5a337a616fb9a045204c465e

### Android StudioGradle 的正确配置与使用Android Studio 中,Gradle 是构建工具的核心部分。为了提高下载速度并解决网络连接问题,可以将 Gradle 配置为使用国内镜像源。以下是关于如何正确配置和使用 Gradle 的详细说明。 #### 一、设置 Gradle 使用国内镜像 在国内开发环境中,由于网络原因可能导致默认的 Gradle 下载地址访问缓慢甚至失败。因此推荐修改 Gradle 的分发仓库地址为国内镜像站点。具体操作如下: 1. **打开 `gradle.properties` 文件** 在项目根目录下找到或创建名为 `gradle.properties` 的文件(如果不存在则手动新建)。此文件用于定义全局属性。 2. **添加以下内容以指定国内镜像** 将以下代码片段复制到该文件中: ```properties systemProp.gradle.download.url=https\://mirrors.cloud.tencent.com/gradle/distributions/ ``` 这里指定了 Gradle 发行版的下载路径为腾讯云提供的镜像服务[^1]。 3. **验证 URL 正确性** 修改完成后,请仔细核对该链接是否能够正常访问以及指向的内容是否匹配所需版本号。 #### 二、配置本地缓存机制 除了调整远程资源位置外,还可以启用本地缓存来进一步优化性能表现。通过编辑用户的级联配置文件实现这一目标: - Windows 用户需定位至 `%USERPROFILE%\.gradle\init.d`; - macOS/Linux 则位于 `~/.gradle/init.d` 路径之下。 在此处新增脚本文件 (如命名为 `caches.gradle`) 并写入下面这段 Groovy 编程语句: ```groovy allprojects { repositories { mavenCentral() google() // 官方支持库托管平台 // 添加阿里云 Maven 私服作为备选方案之一 maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } jcenter() // 已废弃但仍兼容旧工程需求 } } ``` 以上设定会优先尝试从阿里巴巴集团运营维护的开源软件存储库获取依赖项,从而有效规避国际互联网线路拥堵带来的困扰。 #### 三、运行环境初始化注意事项 对于初学者而言,在完成上述两项基础准备工作之后还需要关注几个常见事项: - 确认已安装 JDK 版本满足最低要求,并将其加入系统变量 PATH 当前列表之中。 - 如果遇到编译错误提示找不到某些类或者方法,则可能是插件未同步成功所致;此时可右键点击 Project Explorer 右侧空白区域 -> Invalidate Caches / Restart... 来强制刷新索引数据结构树形图表示法。 --- ### 总结 综上所述,合理利用国内可用的服务节点替代官方服务器不仅有助于提升工作效率还能减少不必要的麻烦。遵循本文介绍的方法步骤即可顺利完成整个流程设置工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值