java~gradle构建公用包并上传到仓库

时间:2022-05-26 15:02:10

java~gradle构建公用包并上传到仓库

我们一般会把公用的代码放在一个包里,然后其它 项目可以直接使用,就像你使用第三方包一样!

仓库

存储包的地方叫做仓库,一般可以分为本地仓库和远程仓库,本地一般用mavenLocal表示,在build.gradle中我们都可以看到,一般在安装包时,会优先从本地仓库下载,这样速度是最快的;远程仓库可以在世界各地使用你的包包,提高了代码的重用,面向对象里叫做DRY原则。

一 发到本地仓库

bootJar.enabled = false表示你生成一个类库项目,jar.enabled = true表示需要生成一个jar文件。

// 类型项目需要是非启动项目,所以有以下设置
bootJar.enabled = false // 不要求启动项目,不需要main方法
jar.enabled = true // 需要在build/libs下生成jar文件 apply plugin: "maven-publish"
task sourceJar(type: Jar) {
from sourceSets.main.allJava
classifier "sources" //定义一个标志 (生成的jar包后面加上sources, 如: jlib-2.2.11-sources.jar)
} publishing {
publications {
maven(MavenPublication) {
from components.java
artifact sourceJar
}
} //定义目标仓库 (包所存放的地方)
repositories {
mavenLocal()
}
}

私有仓库如果添加用户名和密码

repositories {
maven { if (project.version.endsWith('-SNAPSHOT')) {
url = "快照版本的nexus仓库地址"
} else {
url = "release版本的仓库地址"
} credentials {
username 'nexus仓库用户名'
password 'nexus仓库密码'
}
}
}
}