android studio maven仓库地址,Android Studio上传项目到Maven仓库

57f8af15ef9c

前期准备

安装JDK环境。用Nexus新建Release或Snapshot maven仓库。

Android Studio

创建project

包名com.maven.studio

57f8af15ef9c

create project

创建library

包名com.maven.studio.library

57f8af15ef9c

new library

写代码

新建GradleTest 类

package com.maven.studio.library;

public class GradleTest {

public void display(){

System.out.println("gradle test");

}

}

新建gradle.properties

在library module 下新建gradle.properties,并配置:

VERSION=1.0

GROUP_ID=com.maven.studo.library

ARTIFACT_ID=test

RELEASE_URL=http://192.168.86.130:8081/repository/{release仓库名}/

SNAPSHOT_URL=http://192.168.86.130:8081/repository/{snapshot仓库名}/

NAME=admin

PASSWORD=admin123

当然在工程目录下的gradle.properties配置,也是可以的。192.168.86.130是maven仓库ip地址。

新建gradle上传脚本

在library module下,新建maven_push.gradle

apply plugin: 'maven'

apply plugin: 'signing'

configurations {

deployerJars

}

repositories {

mavenCentral()

}

// 判断版本是Release or Snapshots

def isReleaseBuild() {

return !VERSION.contains("SNAPSHOT");

}

// 获取仓库url

def getRepositoryUrl() {

return isReleaseBuild() ? RELEASE_URL : SNAPSHOT_URL;

}

uploadArchives {

repositories {

mavenDeployer {

beforeDeployment {

MavenDeployment deployment -> signing.signPom(deployment)

}

pom.version = VERSION

pom.artifactId = ARTIFACT_ID

pom.groupId = GROUP_ID

repository(url: getRepositoryUrl()) {

authentication(userName: NAME, password: PASSWORD) // maven授权信息

}

}

}

}

// 进行数字签名

signing {

// 当 发布版本 & 存在"uploadArchives"任务时,才执行

required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") }

sign configurations.archives

}

snapshot版是不需要进行数字签名的,但release必须数字签名。

更多任务

例如对工程生成javadoc.jar、上传source.jar,只要在maven_push.gradle加上:

// type显示指定任务类型或任务, 这里指定要执行Javadoc这个task,这个task在gradle中已经定义

task androidJavadocs(type: Javadoc) {

// 设置源码所在的位置

source = android.sourceSets.main.java.sourceFiles

}

// 生成javadoc.jar

task androidJavadocsJar(type: Jar) {

// 指定文档名称

classifier = 'javadoc'

from androidJavadocs.destinationDir

}

// 生成sources.jar

task androidSourcesJar(type: Jar) {

classifier = 'sources'

from android.sourceSets.main.java.sourceFiles

}

// 产生相关配置文件的任务

artifacts {

archives androidSourcesJar

archives androidJavadocsJar

}

导入上传脚本

然后在library/build.gradle导入maven_push.gradle脚本:

apply from: 'maven_push.gradle'

执行gradle上传任务

然后Sync gradle一下,会发现Gradle任务窗口,多了upload任务快,里面有uploadArchives task. 右键->Run 或 双击

57f8af15ef9c

uploadArchives

57f8af15ef9c

deploy

显示BUILD SUCCESS后,打开nexus界面-> component

57f8af15ef9c

upload success

com.maven.studio.library上传成功!

Gradle引入依赖

gradle配置

修改工程根目录build.gradle:

allprojects {

repositories {

jcenter()

// maven { url "http://192.168.86.130:8081/repository/{release仓库名}/" }

maven { url "http://192.168.86.130:8081/repository/{snapshot仓库名}/" }

}

}

修改module下的build.gradle

dependencies {

...

// groupId : artifactId : version

compile 'com.maven.studio.library:test:1.0-SNAPSHOT'

}

Sync gradle同步一下maven仓库,如果gradle build完成,证明成功引入依赖了。

写代码

57f8af15ef9c

MainActivity

成功引入com.maven.studio.library依赖!

相关阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值