gpt4 book ai didi

gradle - 从 Cucumber/groovy 测试(包括使用 gradle 的依赖项)创建 uberJar

转载 作者:行者123 更新时间:2023-12-05 00:56:34 30 4
gpt4 key购买 nike

我在 {project_home}/src/test/groovy/中有一些功能测试

我希望能够使用 gradle 任务来:

  • 从 {project_home}/src/test/groovy/下的所有 .groovy 文件制作一个 jar 文件,包括所有依赖项
  • 能够运行这个 jar 文件来代替运行单个 groovy 文件

  • 我遇到的所有示例都有一个 main 方法,而我没有 main()

    所以我尝试使用“项目的” build.gradle 并附加
    task fatJar(type: Jar) {
    baseName = project.name + '-all'
    from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
    with jar
    }

    并跑 $gradle clean fatJar
    但编译失败:
    :Tests:EndToEndFunctionalTests:fatJar FAILED

    FAILURE: Build failed with an exception.

    * What went wrong:
    Execution failed for task ':Tests:EndToEndFunctionalTests:fatJar'.
    > archive contains more than 65535 entries.

    To build this archive, please enable the zip64 extension.
    See: https://docs.gradle.org/2.7/dsl/org.gradle.api.tasks.bundling.Zip.html#org.gradle.api.tasks.bundling.Zip:zip64

    我确实在/build/libs 下有 jar 文件

    最佳答案

    task uberJar(type: Jar,dependsOn:[':compileGroovy']) {
    zip64 true
    from files(sourceSets.main.output.classesDir)
    from configurations.runtime.asFileTree.files.collect {zipTree(it) }
    with jar

    }

    解决了这个问题。

    关于gradle - 从 Cucumber/groovy 测试(包括使用 gradle 的依赖项)创建 uberJar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36122249/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com