Spring Boot 上传 BootRepackage 可执行 Jar
Posted
技术标签:
【中文标题】Spring Boot 上传 BootRepackage 可执行 Jar【英文标题】:Spring Boot Upload BootRepackage Executable Jar 【发布时间】:2017-01-20 06:47:38 【问题描述】:我正在使用 Spring-Boot 开发我的新项目。在我的 build.gradle 文件中,我使用了“bootRepackage.classifier”,因此我可以分别生成我的项目的默认 jar 和使用 Spring Boot 生成的可执行 jar。我想发布这两个罐子,但我遇到了问题。我正在使用 uploadArchives 任务将我的 jar 上传到 Nexus Maven 存储库。我只能让我的默认 jar 上传。这是我的 build.gradle 文件中与上传存档有关的部分:
bootRepackage.classifier = 'exec'
jar
baseName='default'
version = '1.0.0'
uploadArchives
repositories
mavenDeployer
repository(url: "repositoryURL")
authentication(userName: "username", password: "password")
pom.groupId = 'groupId'
pom.version = "1.0.0"
我错过了什么吗?
【问题讨论】:
有什么问题 我的问题是只有我的默认 jar 会上传。我不确定如何上传使用 bootRepackage.classifier 时创建的可执行 jar。 【参考方案1】:在 SO 的其他地方有几个解决方案:
Publishing a spring boot executable jar artifact:
artifact(file("$buildDir/$project.name-$project.version-$bootRepackage.classifier.jar"))
classifier 'exec'
Gradle maven-publish does not build standalone spring-boot application:
publish
dependsOn assemble
【讨论】:
谢谢!当我可以使用发布任务时,我发现我正在使用uploadArchives。通过此更改,我使用了您的第一个解决方案,它完全符合我的要求。 对我不起作用:在 root 上找不到参数 [/var/workspace/build/my-project-unspecified-null.jar, build_b8ejm5oe5e1nrnc8xnmcspqxz$_run_closure3@4227f732] 的方法 artifact() org.gradle.api.Project 类型的项目“我的项目”。以上是关于Spring Boot 上传 BootRepackage 可执行 Jar的主要内容,如果未能解决你的问题,请参考以下文章
企业级spring-boot案例-Spring Boot 上传文件(图片)
Spring Boot(十七):使用 Spring Boot 上传文件