【发布时间】:2020-07-16 08:55:51
【问题描述】:
我正在尝试为我的 Spring 启动应用程序编写 build.gradle。(gradle v.6.5.1)
构建后,我想将其部署到私有 Nexus 存储库。(带有资产 zip 文件)
问题是...当我执行命令 gradle build publish --debug 时,它会上传 bootJar,但不会上传资产 zip 文件。并且控制台中没有可疑消息。
这里是build.gradle的部分
plugins {
...
id "maven-publish"
}
task assembleAssets(type:Zip) {
archiveFileName = "${rootProject.name}-${rootProject.version}.zip"
destinationDirectory = file("${buildDir}/libs/")
from "assets"
classifier "assets"
}
tasks.build.dependsOn(assembleAssets)
# From bootJar
configurations {
[apiElements, runtimeElements].each {
it.outgoing.artifacts.removeIf { it.buildDependencies.getDependencies(null).contains(jar) }
it.outgoing.artifact(bootJar)
}
}
publishing {
publications {
bootJarDeploy(MavenPublication) {
from components.java
}
assetDeploy(MavenPublication) {
artifact source: assembleAssets, extension: 'zip', classifier: 'config'
}
}
repositories {
maven {
url = "${nexus_url}"
credentials {
username repoUser
password repoPw
}
}
}
}
我检查了本地目录中的 Zip 文件生成并在 Nexus UI 中上传了 jar(bootJar)。但是 Nexus 中没有 zip 文件...
我想将我的 zip 存档文件上传到 Nexus。
我是否遗漏了什么,或者只是将maven-publish 插件与bootJar 一起使用并不好?
谢谢。
【问题讨论】:
标签: gradle deployment archive maven-publish