nexus安装并将Android代码提交到本地仓库
2018-06-27 本文已影响0人
儿童劫快乐
首先从nexus官网下载(Download Repository OSS)
然后解压到本地文件夹中,windows通过cmd进入到nexus-3.12.1-01/bin的目录下,执行命令:nexus.exe /run,启动服务
接着就可以通过浏览器访问localhost:8081,进入nexus的页面,初始密码是admin和admin123,然后就可以上传代码到仓库了
在项目根目录的gradle.properties添加配置
VERSION=1.0
GROUP_ID=com.maven.studio.library
ARTIFACT_ID=test
RELEASE_URL=http://127.0.0.1:8081/repository/maven-releases/
SNAPSHOT_URL=http://127.0.0.1:8081/repository/maven-snapshots/
NAME=admin
PASSWORD=admin123
新建gradle上传脚本
在library module下,新建nexus.gradle
applyplugin:'maven'
applyplugin:'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 +'-' +new Date().format("yyyyMMdd.HHmmss")
pom.artifactId = ARTIFACT_ID
pom.groupId = GROUP_ID
repository(url: getRepositoryUrl()) {
authentication(userName: NAME,password: PASSWORD)
}
}
}
}
// 进行数字签名
signing {
// 当 发布版本 & 存在"uploadArchives"任务时,才执行
required { isReleaseBuild() &&gradle.taskGraph.hasTask("uploadArchives") }
signconfigurations.archives
}
// 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'
fromandroid.sourceSets.main.java.sourceFiles
}
// 产生相关配置文件的任务
artifacts {
archivesandroidSourcesJar
archivesandroidJavadocsJar
}
在library module的build.gradle下添加
apply from:'nexus.gradle'
然后执行upload的任务就可以了
引用
在根目录的build.gradle的allprojects下添加
allprojects {
repositories {
google()
jcenter()
maven { url"http://127.0.0.1:8081/repository/maven-releases/" }
}
}
最后在主module的build.gradle下添加依赖就可以了
api'com.maven.studio.library:test:1.0-20180627.094944'