首页 > 解决方案 > 为什么gradle找不到资源?

问题描述

我目前正在尝试将项目从 Gradle 3.5 迁移到最新的 Gradle 版本 4.9。我遇到了问题,Gradle 找不到执行 junit 测试所需的资源。这些资源是预先生成的,包含一些配置文件和参考数据。

该项目使用 npm 和 Gradle 的组合进行编译。通常我们运行一个 npm 脚本,它使用 顺序执行几个任务run-s,例如 webpack 构建以生成一些静态资源。最后,我们使用 Gradle 将所有内容编译在一起。最后一个 Gradle 任务也执行 junit 测试。此步骤失败并使整个构建失败。Gradle runner 抱怨一些资源没有找到,尽管得到了正确的复制到正确的地方。

当我./gradlew test --rerun-tasks在最后一个 Gradle 构建步骤失败后立即执行(是的,我们使用包装器,它也已正确升级)时,它成功执行了 junit 测试。

我知道,Gradle 4.x 中的目录结构发生了变化,但这似乎不是问题。

我的怀疑是,这与我们通常如何运行整个构建过程有关。与 结合的东西npm

标签: gradlenpmbuild.gradle

解决方案


推荐阅读