项目发布
-
将项目发布到服务器上给其他人使用
-
导入插件
plugins { id 'java' id 'maven-publish' // 用于发布 }
- 发布所需配置
publishing { publications { myLibrary(MavenPublication) { groupId = 'org.gradle.sample' //指定GAV坐标信息 artifactId = 'library' version = '1.1' from components.java // 这里表示发布jar包 //from components.web // 需要引入war插件,这里表示发布war包 } } repositories { //本地仓库位于USER_HOME/.m2/repository mavenLocal() //发布项目到私服中 maven { name = 'myRepo' //name属性可选,表示仓库名称,url必填 //发布地址:可以是本地仓库或者maven私服 // 如下表示发布到1个新建的文件夹中 //url = layout.buildDirectory.dir("repo") // 如下http的配置方式为maven私服,方式2 // url = http://my.org/repo // 如下是2个url组成的三目运算,查看当前build.gradle中version '1.0-SNAPSHOT'是已SNAPSHOT结尾则使用第1个地址,否则使用第2个地址 def releasesRepoUrl = layout.buildDirectory.dir('repos/releases') def snapshotsRepoUrl = layout.buildDirectory.dir('repos/snapshots') // 当然也可以指定如下http方式的地址 //def snapshotsRepoUrl = http://ssss url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl //认证信息:用户名和密码 // credentials { // username = 'joe' // password = 'secret' // } } } }
- 执行发布指令
generatePomFileForPubNamePublication: 生成 pom 文件 publishPubNamePublicationToRepoNameRepository:发布项目到指定仓库,如果没有仓库名,默认为 maven publishPubNamePublicationToMavenLocal: 将 PubName 发布复制到本地 Maven 仓库中包括 POM 文件和其他元数据。 publish: 发布到 repositories 中指定的仓库(为比如 Maven 私服) publishToMavenLocal: 执行所有发布任务中的操作发布到本地 maven 仓库【默认在用户家目录下的.m2/repository】。
- 由于暂未指定私服,所以点击如下
- 发布成war包
apply plugin: 'war' // 需要导入war插件 // from components.java // 这里表示发布jar包,注释这一行 from components.web // 放开注释,表示打成war包
- 发布带源码和文档的jar包
from components.java // 这里表示发布jar包 //from components.web // 表示打成war包,注释这一行,这里需要打成jar包 plugins { id 'java-library' // 引入该插件 id 'maven-publish' } //带源码和javadoc的发布:需要'java-library'插件支持:它是java的升级版,java插件的功能java-library都有 javadoc.options.encoding="UTF-8" java { withJavadocJar() withSourcesJar() }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术