安装nexus3
我使用的docker镜像是sonatype/nexus3
1.下载镜像
docker pull sonatype/nexus3
#docker 镜像使用说明
#https://hub.docker.com/r/sonatype/nexus3/
2. 创建存储nexus3数据的文件夹并赋权限
mkdir /data/nexus-data && chown -R 200 /data/nexus-data
3.挂在并启动容器
docker run -d -p 8081:8081 --name nexus -v /data/nexus-data:/nexus-data sonatype/nexus3
现在我们就可以在8081端口上看到nexus3的界面了
默认用户名:admin
默认密码:admin123
你要上传项目的配置
build.gradle配置
group 'util'
version '1.0-SNAPSHOT'
apply plugin: 'java'
//我们需要这个插件来上传jar包
apply plugin: 'maven'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile group: 'joda-time', name: 'joda-time', version: '2.9.9'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
//我们上传jar包时使用的task
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.0'
artifactId 'util'
groupId GROUP_ID
packaging TYPE
description DESCRIPTION
}
}
}
}
gradle.properties配置
该文件与build.gradle在同级目录是gradle默认的读取配置信息的文件,如果没有可以自己创建一个
#Maven仓库的URL
MAVEN_REPO_RELEASE_URL=http://IP:8081/repository/maven-releases/
MAVEN_REPO_SNAPSHOT_URL=http://IP:8081/repository/maven-snapshots/
#对应maven的GroupId的值
GROUP = common
#登录nexus ossde的用户名
NEXUS_USERNAME=admin
#登录nexus oss的密码
NEXUS_PASSWORD=admin123
# groupid
GROUP_ID = common
# type
TYPE = jar
# description
DESCRIPTION = This is util lib
将maven-releases仓库设置为允许发布,release默认不开启允许发布
1.访问并使用admin登陆你的nexus3服务,并且切换到设置页面,点击maven-releases项
2.修该为允许发布并保存
上传项目
进入你要上传项目的根目录 执行gradle uploadArchives
执行成功你会看到
BUILD SUCCESSFUL in 1s
3 actionable tasks: 1 executed, 2 up-to-date
要使用nexus3私服的项目配置
build.gradle配置
group 'client'
version '1.0-SNAPSHOT'
apply plugin: 'java'
sourceCompatibility = 1.8
repositories {
//这里是你nexus3私服的地址,与你上传jar包中设置的一致
maven { url "http://ip:8081/repository/maven-releases/" }
mavenCentral()
}
dependencies {
//这里是刚刚上传jar包时设置的组织,名称和版本
compile group: 'common', name: 'util', version: '1.0.0'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
DEMO项目已上传到码云:https://gitee.com/wangyongshun/gradleManage.git