通过 maven-publish gradle 插件发布 JAR 时,删除 JAR 名称中的“-all”后缀

Com*_*vis 7 gradle maven kotlin maven-publish

maven-publish插件发布 JAR,名称格式为“project-1.0-all.jar”

\n\n

我用的是Maven,一切正常。现在我已经使用 maven-publish 插件迁移到 Gradle。

\n\n

这是我的publishingGradle 构建脚本部分

\n\n
    publishing {\n        publications {\n            create<MavenPublication>("mavenJava") {\n                artifact(this@run["shadowJar"])\n                pom {\n\n                    artifactId = project.name\n                    groupId = project.group.toString()\n                    packaging = "jar"\n\n                    name.set(project.name)\n                    description.set(project.description)\n                    url.set("https://gitlab.com/otherwise.su/config")\n                    inceptionYear.set("2018")\n                    licenses {\n                        license {\n                            comments.set("Open-source license")\n                            distribution.set("repo")\n                            name.set("\xd0\x9b\xd0\xb8\xd1\x86\xd0\xb5\xd0\xbd\xd0\xb7\xd0\xb8\xd1\x8f")\n                            url.set("https://gitlab.com/otherwise.su/config/blob/master/LICENSE.md")\n                        }\n                    }\n                    developers {\n                        developer {\n                            email.set("postovalovya@gmail.com")\n                            id.set("CMDR_Tvis")\n                            name.set("Commander Tvis")\n                            roles.set(listOf("architect", "developer"))\n                            timezone.set("Russian Federation/Novosibirsk")\n                            url.set("https://gitlab.com/CMDR_Tvis")\n                        }\n                    }\n\n                }\n            }\n        }\n        repositories {\n            maven("https://gitlab.com/api/v4/projects/10077943/packages/maven") {\n                credentials(HttpHeaderCredentials::class) {\n                    name = "Job-Token"\n                    value = System.getenv("CI_JOB_TOKEN")\n                }\n                authentication { register("header", HttpHeaderAuthentication::class) }\n            }\n        }\n    }\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我的完整构建脚本

\n\n

预期的:

\n\n

已发布名称格式为“project-1.0.jar”的 JAR。

\n\n

实际的:

\n\n

已发布名称格式为“project-1.0-all.jar”的 JAR。

\n

hot*_*key 5

要更改已发布工件的 JAR 分类器,请替换

artifact(this@run["shadowJar"])
Run Code Online (Sandbox Code Playgroud)

artifact(this@run["shadowJar"]) {
    classifier = null
}
Run Code Online (Sandbox Code Playgroud)

这应该删除all由 Shadow 插件设置为分类器的后缀。