scala - gradle 使用 kotlin DSL 在 jar 工件名称中包含 scala 版本

标签 scala gradle jar gradle-kotlin-dsl

如何使用 gradle build 任务重命名 gradle scala 插件生成的 jar 以包含 scala 版本名称?我相信这个属性被称为:archivesBaseName。它可以通过 java 插件 ( https://docs.gradle.org/current/dsl/org.gradle.api.Project.html#org.gradle.api.Project:archivesBaseName ) 获得。

注意:我想使用 kotlin DSL 来完成此任务。

对于影子 jar :

id("com.github.johnrengelman.shadow") version "5.2.0" apply false
val shadowJar: com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar by tasks
    shadowJar.apply {
        archiveBaseName.set("${project.name}_2.12-all")
    }
    tasks {
        build {
            dependsOn(shadowJar)
        }

已经工作正常,但我也想更改常规输出。

即:

archivesBaseName = "asdf"//"${project.name}_${sparkVersion}_${scalaVersionShort}"

通常有效。但我还没有弄清楚如何让它在 Kotlin DSL 中工作

最佳答案

关于scala - gradle 使用 kotlin DSL 在 jar 工件名称中包含 scala 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62402073/

相关文章:

scala - mixins和继承之间有什么区别?

scala - 将 Scala 结构类型与抽象类型一起使用

scala - 在 Spark SQL 中,如何注册和使用通用 UDF?

android - 无法为 com.android.build.gradle.internal.dsl.BaseAppModuleExtension 类型的扩展 'url' 获取未知属性 'android'

从非 flavor 应用程序引用的 Android 多 flavor 库 - AAPT : No resource found

android - 无法从 Android Studio 构建

java - 使用 google-play-services jar 文件的两个 adobe air native 扩展

java - 将 Java-1.7 项目库导入 Android 时出错

java - 在 Scala 中编写 Java 库的最佳实践

java - 尝试执行生成的 jar 文件后找不到 StyleConverterImpl 类