maven-publish plugin
可以参阅官方详解官方详解
1. 搭建nexus私服
1-1. 官网下载安装包
官网地址:https://www.sonatype.com/download-oss-sonatype [root@slave1 bin]# wget https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.7.1-02-unix.tar.gz
1-2. 解压
[root@slave1 bin]# mkdir -p /home/nexus [root@slave1 bin]# tar -zxvf nexus-3.7.1-02-unix.tar.gz -C /home/nexus/
1-3. 运行
[root@slave1 bin]# cd nexus-3.7.1-02/bin/ [root@slave1 bin]# ./nexus start
1-4. 浏览器访问
http://172.18.115.187:8081/ 默认用户名:admin 默认密码:admin123
2. gradle插件上传jar包
创建一个独立的gradle文件upload.gradle
build.gradle引入upload.gradle文件
apply from: 'upload.gradle'
2-1. maven-publish插件
apply plugin: 'maven-publish'
//同时上传源码jar包
task sourceJar(type: Jar) {
from sourceSets.main.allJava
}
publishing {
publications {
mavenJava(MavenPublication) {
from components.java//如果是war包 from components.web,这里是jar包
//同时上传源码包
artifact sourceJar {
classifier "sources"
}
}
//如果需要自定义重新定义三要素GAV
// maven(MavenPublication) {
// groupId 'org.gradle.sample'
// artifactId 'project1-sample'
// version '1.1'
// from components.java
// }
//修改pom文件
// mavenCustom(MavenPublication) {
// pom.withXml {
// asNode().appendNode('description',
// 'A demonstration of maven POM customization')
// }
// }
}
repositories {
maven {
url 'http://172.18.115.187:8081/repository/maven-releases/'
credentials {
username = 'admin'
password = 'admin123'
}
}
}
}
2-2. 执行task上传
gradle publish
gradle publishToMavenLocal//发布到本地仓库
3. 引用jar包
build.gradle文件
repositories {
mavenLocal()//maven本地仓库
mavenCentral()//maven中央仓库
maven {url 'http://172.18.115.187:8081/repository/maven-releases/'}//镜像
}
Last updated
Was this helpful?