当前位置: 首页 > 知识库问答 >
问题:

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

闾丘朗
2023-03-14

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

注意:我希望使用kotlin DSL完成此任务。

对于shadowjar:

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}"

通常管用。但是我还没有想出如何让它在静态编程语言DSL中工作

共有1个答案

孟福
2023-03-14

base.archivesBaseName=“gradle”

https://chromium.googlesource.com/external/github.com/gradle/gradle/ /cf6d0508131b0ff9d6354b3d46f83bcf5ca8f8a4/build.gradle.kts#45

完成任务

 类似资料:
  • 在maven存储库http://mvnrepository.com/artifact/org.apache.spark中,apache-spark版本1.4.1有两种版本。 SPARK-*2.10和SPARK-*2.11 这些似乎是Scala版本。如果我使用java发行版部署apache-spark,那么哪一个是首选?

  • 我试图在我的“Java”gradle项目中包含一个本地jar文件。我已经在Project的“main/resource”文件夹中添加了jar文件。在Build.Gradle中添加了以下行:-

  • 我也发现过类似的问题,但没有一个问题对我想做的事情很有效。我正在用Android Studio和gradle进行开发,我的构建文件中有几种口味,每种都有一个版本名。有没有办法在APK文件中包含味道的版本名?

  • 当我将mvn项目导入Intellij时,它生成的jar文件不包括版本。但是mvn生成的jar具有格式。所以我最终得到了两个jar文件,一个有版本,另一个没有版本。当然,我可以在Intellij设置中更改模块名称以包括版本。但当我更改pom文件时,它将被重置。 也许其他人有更好的主意?

  • 我正在尝试编译一个APK,它在一个JAR文件中使用一个遗留库。 我已经做了其他的问题,但没有一个对我有帮助:1、2、3和4。我甚至在github上发现了一个与我的痛苦gradle/gradle/issues/1184相关的未解决问题--没有列出本地文件依赖关系...这很糟糕,因为我花了很多时间思考文件依赖项没有被包括在内。 总之,这是我项目的build.gradle文件: 这是应用程序的构建.Gr

  • 我想在构建时将salesforce的Enterprise.jar文件包含在我的项目中,使用gradle,有没有人可以帮助我在项目中包含src/main/resources文件夹中存在的本地jar文件。