java - 如何使用带有 maven-publish 和 shadow 插件的 Gradle 重命名正在发布的 jar 文件?
问题描述
基本上我想要做的是将一个 jar 文件发布到具有特定名称的 GitHub 包。我现在拥有的是:
shadowJar {
archiveFileName = "Some-Name-${parent.version}.${extension}"
}
publishing {
...
publications {
shadow(MavenPublication) { publication ->
project.shadow.component(publication)
artifactId = 'me.project'
groupId = 'some-project'
version = 1.1.0
}
}
}
但是从这个我得到some-project-1.1.0-all.jar
,我想得到some-project-1.1.0.jar
但似乎无法找到方法。更改任务似乎不会影响罐子archiveFileName
,只影响罐子。shadowJar
publishing
build
解决方案
我相信你需要改变任务archiveClassifier
的。shadowJar
默认情况下,它被配置为all
.
- 第 5 点:https ://github.com/johnrengelman/shadow/blob/master/src/docs/getting-started/README.md#default-javagroovy-tasks
- https://github.com/johnrengelman/shadow/blob/7.0.0/src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin.groovy#L66
就像是:
tasks.shadowJar {
archiveClassifier = ""
}
任务类型的shadowJar
任务扩展。Jar
默认情况下,使用Java 插件,archiveClassifier
配置为空字符串""
。Shadow 插件shadowJar
使用all
.
推荐阅读
- r - 尝试制作一个在字符串中给定字母处停止的 for 循环
- swift - 核心数据实体多个构建配置
- css - BootStrap dropdown menu hides behind the screen
- spring - JPA EntityManagerHolder cannot be cast to Hibernate SessionHolder with Spring 5.1 and Hibernate 5.3
- php - PHP - curl - 如何创建 API 源以使用 CURLOPT_USERPWD 函数
- shell - 计算参数
- racket - Requiring a module using its path from the project's root?
- ruby-on-rails - 如何验证 Rails 模型中的坐标?
- laravel - 将查询字符串添加到具有可选参数的 laravel 5 路由
- jquery - 防止整页缩放