打算利用公司已有的篇带Gitlab代码管理库。实现maven仓库的利用搭建。
PS:如果公司服务器资源充足,搭建采用Nexus 搭建一个Maven库。篇带这样整个Maven库的利用管理会更合理和有效一些。
结束aar和jar文件乱发的搭建历史,使用implementation 引用。篇带
如果在Glilab将项目配置为公共public权限。利用那么外部其他客户也可以使用maven仓库了。搭建
Android Studio 环境版本
Android Studio 4.2.1
build:gradle:4.2.1
将需要打包成jar或者aar的项目配置maven 脚本。
新建一个:gitlab.gradle文件 和项目build.gradle同一级目录下创建。搭建
并添加下面代码:
apply plugin: 'maven'
uploadArchives {
repositories.mavenDeployer {
def mavenDirPath = file('../maven') // 相对地址。 编译后的代码将会存在父目录的maven文件夹下。
def mavenDirPath = file('D:\\appmaven') //绝对路径,编译后的代码将会存在 D盘的appmaven文件夹下。
repository(url: "file://${ mavenDirPath.absolutePath}")
pom.project {
groupId "cn.zinyan.demo" // 包名
artifactId "Key" // module的名字
version '1.1.1'// 版本号
//配置完毕后,包名决定地址中的 第一项,artifactId 决定了第二项,version 决定了第三项版本号
//implementation 'cn.zinyan.demo:Key:1.1.1'
}
}
}
// 如果不想生成 javadoc.jar 和 sources.jar 库以下代码可以省略
def sourceDirs
if (project.hasProperty("android")) {
sourceDirs = android.sourceSets.main.java.srcDirs
}else {
sourceDirs = sourceSets.main.java.srcDirs
}
task javadocs(type: Javadoc) {
source = sourceDirs
}
//生成doc
task javadocsJar(type: Jar) {
// classifier='javadoc' //老版本写法, 现在已经过期了。建议使用下面的
archiveClassifier.set('javadoc')
from javadocs.destinationDir
}
//生成sources
task sourcesJar(type: Jar) {
// classifier='sources'//老版本写法, 现在已经过期了。建议使用下面的
archiveClassifier.set('sources')
from sourceDirs
}
artifacts {
archives javadocsJar
archives sourcesJar
}
在build.gradle 文件中引用gitlab.gradle 文件。
添加方式:apply from: 'gitlab.gradle'
然后我们可以在右侧的Gradle面板的Tasks->upload->uploadArchives 指令
点击执行该指令,就可以在本地生成相应编译后的代码了。
上面的指令直接支持:aar库和jar库的编译。 系统会根据你的lib的类型。自动打相应的文件。
直接通过gi将执行编译后的全部aar,和jar等数据上传就可以了。
包括aven-metadata.xml等文件,pom等文件,javadoc等文件,sources等文件。
如果你的GitLab上的maven仓库项目是公共的。那么maven 就是公共的
其他人调用,只需要该maven库的地址即可
allprojects {
repositories {
maven {
url "https://你的仓库的地址+直接到项目名/分支/"
}
}
这个url链接:gitlab 上通常情况下 。
公共项目的路径是这样的 https://域名地址/Group名称/项目名/-/raw/分支名/。
如果该项目是你自己的。而不是组里面的。那么Group名称就得换成你的用户名了。
有一个很简单的方法。
访问你的gitLab库,打开我们提交的一个xml文件。例如pop.xml文件。
在浏览器中,从https开始一直到你的包名称截止,这一段地址就是我们需要配置到maven上的url地址。后面的包名路径,IDEA会自动帮我们补上并更新了
如果你的GitLab 是私有的。只想部分人可以使用。
需要在maven 地址导入的位置,添加相应的访问账号和Token了。
可以参考文章 利用Gitlab仓库搭建私有Maven仓库 - 知乎 (zhihu.com)
例如我在gitee上搭建的一个简单的maven仓库。
allprojects {
repositories {
maven{
url 'https://gitee.com/zinyan/maven/raw/master/'
}
}
implementation 'com.zinyan.util:general:1.0.0'
责任编辑:姜华 来源: 今日头条 Maven库Gitlab(责任编辑:百科)
正业国际(03363.HK)全年纯利下降33.35% 每股基本盈利人民币11分
硬件监测软件 CapFrameX 1.72 Beta 发布,引入英特尔 PresentMon v1.9.0
银保监会:前10个月房地产合理贷款需求得到满足 信贷结构持续优化
TV动画《赛马娘》第3季确定制作 新OVA于2023年春发布
Redmi K30至尊纪念版发布:无短板水桶机、重回1999元!
康健国际医疗(03886.HK)公布消息:预计年度综合亏损约2.55亿港元