Android Studio 将github作为远程maven仓库

简介: github是一样很好用的工具,除了能作为开源项目的搜索工具外,还能用来搭建maven仓库,方便远程的使用。为此,我查阅了一些资料也结合了一些博主的博客,一步步试验最后成功搭建出了这样的maven仓库,在这里我将整个搭建的过程分享给大家。 一、准备 准备好两样必要的工具 git和gradle 1.安装git,直接下载一个 GitHub Desktop for Mac

github是一样很好用的工具,除了能作为开源项目的搜索工具外,还能用来搭建maven仓库,方便远程的使用。为此,我查阅了一些资料也结合了一些博主的博客,一步步试验最后成功搭建出了这样的maven仓库,在这里我将整个搭建的过程分享给大家。

一、准备
准备好两样必要的工具 git和gradle
1.安装git,直接下载一个
安装之后,附带着也会安装好git环境
重新启动终端,输入 git --version 

如果输出的类似截图的结果的话则git环境配置好了。 

2.安装gradle
直接上百度搜索gradle,去官网下载一个,官网 http://gradle.org/
下载好之后,会得到一个zip文件,解压即可 


在bin里面的gradle文件就是我们所需要的,我们将其配置到系统环境变量中即可。
windows中将路径配置到环境参数,mac/ninux中将路径添加到 ~/.bash_profile中。
之后重新打开终端,输入gradle -v 

如果成功打印出了gradle的版本信息的话则表示gradle配置成功。

二、步骤
整个操作主要分为以下几个步骤:
1.第一步当然是在github上创建一个repository
2.创建lib工程
3.生成maven文件
4.上传到github
5.工程远程调用 

三、详细操作
1.在github上创建repository 

在github上创建好repository之后,可以在电脑本地的创建一个空的文件夹命名为MavenTest,作为本地的repository,终端进入到该文件夹,依次输入:

git init
git remote add origin git@github.com:OboBear/MavenTest.git

将该目录与远程仓库进行绑定
这个时候作为测试,也可以创建一个README文件
里面随便输入一些东西,之后提交到github上面
第一次提交的时候使用命令:
git push -u origin master
推送成功之后,将会在github上看到推送上去的README文件。 

2.创建lib工程
打开android studio,随便创建一个测试主工程。

之后再创建一个module,module类型是 Android Library,如图所示 

名字随便取,这里为了方便取为:maventest


创建一个测试类名为MavenTestActivity (可以创建任意的类)


这里创建了一个测试用的Activity的虚类,内容可以随便编写,只要没有语法错误就行



3.生成maven文件
先选择本地一个空的文件目录作为maven文件的存放的地方
然后打开android studio中的gradle.properties文件 

在gradle.properties的最后一行加入所选择的目录的路径:


打开该modul的build.gradle(非工程的gradle)文件
在开头的地方添加一行
apply plugin'maven'
然后再最后添加以下内容: 

这里面groupId可以填包名,artifactId可以填module名称,version是当前module的版本,可以填1.0 (这三个参数都可以自己决定,这个最后影响的是调用这个远程库的时候compile里面所要填写的值,比如按照图片的参数来的话,最后使用的时候得写 compile 'com.obo:mavantest:1.0')

一整个build.gradle的内容如下:



然后打开终端,cd到该gradle文件所在的目录,运行输入命令:
gradle uploadArchives

就会开始运行gradle,稍微等待一点时间
如果最后gradle运行结果没有报错的话,则会在之前所选定的MavenTest目录下生成一组文件。(与github绑定的本地目录) 

最里面的那些就是我们所需要的Maven文件。
我们打开maven-metadata.xml,可以看到里面的参数都已经配置完毕了。 

而实际上,我们也可以看到在目录1.0下面有一个maventest-1.0.aar文件,其实就是

4.上传到github
终端进入到该目录下(MavenTest目录),依次输入:
git add ./                              //将整个目录下的改变全部添加
git commit -m “toast”          //将修改进行提交
git push origin master         //将master分支推送仓库 

当然也可以使用github desktop可视化工具方便地进行以上全部的操作。
完成之后,在网页上打开github,可以看到内容全部都推送上去了,操作很成功。 

复制出当前界面的连接地址,比如
对其进行修改:

即 github.com ——> raw.githubusercontent.com
再在末尾追加/master
表示当前要选用的是master分支的内容

5.工程远程调用
打开需要调用该远程maven的module的build.gradle

在最后增加: 

repositories {
    jcenter()
    maven {
        url "https://raw.githubusercontent.com/OboBear/MavenTest/master"
    }
}

如果原先就已经存在repository了的话,则直接在里面添加,这里的url的值就是我们修改后的链接,表示要将该链接作为自定义仓库的地址。
之后在dependencies下增加 

dependencies{
    compile 'com.obo:maventest:1.0'
}


编译一遍,如果没有错误的话则说明远程调用成功了,之后就可以在程序里调用了。

到此,整个远程的库配置结束。

---------------------------------------------------------------------------------

本例子中,github上的maven库所存放的链接为:

https://github.com/OboBear/mavenRepository

整个工程的代码例子所存放的链接为:

https://github.com/OboBear/MavenGithub

(工程名称和链接地址都改过了,但是思路还是一样的,例子也是可以运行的)



目录
相关文章
|
4月前
|
XML 安全 Java
【Maven】依赖管理,Maven仓库,Maven核心功能
【Maven】依赖管理,Maven仓库,Maven核心功能
986 3
|
6月前
|
敏捷开发 JavaScript Java
阿里云云效产品使用合集之如何进行Maven私有仓库迁移
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
6月前
|
敏捷开发 Java 持续交付
阿里云云效产品使用合集之maven仓库是否可以代替自建的Nexus
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
7月前
|
Java Maven
maven开源仓库
maven开源仓库
157 6
|
7月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理构件(如JARs):本地仓库在首次执行时创建,默认位于`%USER_HOME%/.m2/repository/`;远程仓库包括中央仓库,存放大量开源Java构件,可在线浏览<http://search.maven.org/>。若本地缺失构件,Maven会从远程下载至本地。可通过settings.xml配置本地仓库路径。
|
7月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理构件,包括依赖和插件。有本地、中央和远程三种类型。本地仓库在首次运行时创建,默认在用户目录的`.m2/repository`。Maven首先查找本地仓库,若无则从远程仓库(如中央仓库)下载。中央仓库包含大量开源Java构件,可在线浏览于http://search.maven.org/。
|
8月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理构件,如JARs,分为本地、中央和远程。本地仓库在首次运行时于用户目录的`.m2/repository`创建,默认位置可修改`settings.xml`。中央仓库是社区维护的,包含大量开源Java构件,可通过http://search.maven.org搜索。当本地缺失依赖时,Maven会从远程仓库下载到本地。
|
8月前
|
Java Linux Maven
Maven 仓库
Maven仓库管理依赖,包括本地、中央和远程仓库。本地仓库在首次运行时创建,默认位于用户目录的`.m2/repository`。若本地缺少构件,Maven会从远程仓库下载,中央仓库是默认的远程源,包含大量开源Java构件。中央仓库无需配置,可通过HTTP访问,[search.maven.org](http://search.maven.org/#browse)可浏览其内容。
|
8月前
|
敏捷开发 Java 测试技术
阿里云云效产品使用问题之搭建的maven仓库在哪里可以查看
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
8月前
|
Java Linux 网络安全
在Linux上搭建Maven仓库的实战教程
在Linux上搭建Maven仓库的实战教程
433 0

热门文章

最新文章

  • 1
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
    24
  • 2
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    33
  • 3
    Android历史版本与APK文件结构
    120
  • 4
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    28
  • 5
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
    23
  • 6
    APP-国内主流安卓商店-应用市场-鸿蒙商店上架之必备前提·全国公安安全信息评估报告如何申请-需要安全评估报告的资料是哪些-优雅草卓伊凡全程操作
    56
  • 7
    【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    37
  • 8
    当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
    73
  • 9
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    118
  • 10
    Android经典面试题之Kotlin中Lambda表达式和匿名函数的区别
    29
  • 推荐镜像

    更多