是否可以并行运行同一子项目中的两个独立的 gradle 任务?

2023-11-22

在我工作的项目(基于 gradle)中,有一个非常大的模块(gradle 子项目)。 在 CI 构建过程中,该子项目中的两个任务按顺序执行,这会导致大量的执行时间。

该项目使用org.gradle.parallel=true,但是当我创建简单的项目来检查如何使用此属性执行来自同一子项目的独立任务时,我发现任务是按顺序执行的。

我的问题:

是否可以并行执行同一 gradle 子项目中的两个独立任务以缩短它们的执行时间? (假设它们不在同一位置产生输出并且不使用任何共享状态)


从文档(参见并行执行):

大多数构建都包含多个项目,其中一些项目通常是相互独立的。然而,Gradle 默认情况下一次只会运行一项任务,无论项目结构如何(这很快就会得到改进)。通过使用 --parallel 开关,您可以强制 Gradle 并行执行任务只要这些任务位于不同的项目中.

我认为这里最重要的部分是“只要这些任务位于不同的项目中”:如果您的两个长时间运行的任务属于同一个子项目,您将无法使它们并行执行(不是在当前的 Gradle 版本中) )

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以并行运行同一子项目中的两个独立的 gradle 任务? 的相关文章

随机推荐

  • 使用 MVC 属性路由的每个控制器有多个 RoutePrefix?

    通过新的 MVC 属性路由 我知道您可以分配多个Route属性为单个ActionResult 但我正在寻找一种方法来做同样的事情RoutePrefix等级 我有一个控制器 在每个操作中 都应该可以通过三种途径访问 Games Title C
  • 在 UserControl 中使用依赖属性的 wpf 问题

    我制作了一个用户控件 该控件每隔几秒就使用来自串行端口的数据更新一次 这个 UserControl 应该非常简单 由一个用于字段名称的 Label 和另一个包含字段值的 Label 组成 我说它should很简单 但是行不通 它根本不更新
  • 使用 youtube v3 API 检索 youtube 播放列表中的所有视频

    我正在使用 youtube v3 API 检索播放列表的视频并获得 50 个项目 此链接没有任何问题 但视频数量是 100 而我只获得 50 我怎样才能获得接下来的 50 个项目 我试过起始索引但它不适用于 v3 API 任何帮助表示赞赏
  • 使用 CSS 强制纵横比在 Safari 上不起作用

    以下代码在 Firefox 和 Chrome 中运行良好 但在Safari 在 Mac 和 iPad 上测试 http jsfiddle net eFd87 div div img src http farm3 staticflickr c
  • 获取用户 Xbox 成就列表?

    有没有办法从 Xbox 获取用户的成就列表而不处理屏幕抓取等 网站如何喜欢http www trueachievements com做吗 他们绝对不是屏幕抓取 因为他们没有我的 Live ID 凭据 我知道 Xbox LIVE 社区开发者计
  • 如何获取包中 setup.py (setuptools) 中定义的版本?

    我怎样才能获得定义的版本setup py从我的包裹中 对于 version 或其他目的 询问已安装发行版的版本字符串 要在运行时从包内检索版本 您的问题实际上是在问什么 您可以使用 import pkg resources part of
  • 如何在 VSCODE 终端中实现平滑滚动?

    我正在 VSC 中工作并编写 Nodejs 我在长终端输出中遇到滚动问题 如果我使用滑块 在终端右侧滚动滑块会走太多行太快 所以 问题是 我们是否有集成终端中的平滑滚动选项可以轻松地用箭头逐行读取输出 或者我们必须使用另一个外部终端 谢谢
  • 未找到派生类中具有相同名称但不同签名的函数

    我有一个具有相同名称的函数 但在基类和派生类中具有不同的签名 当我尝试在从派生类继承的另一个类中使用基类的函数时 我收到错误 请看下面的代码 class A public void foo string s class B public A
  • JQuery 动画边框而不移动 div

    我想通过首先在 mouseenter 上将其边框加粗 5px 然后在 mouseleave 上将边框减小 5px 来对 div 进行动画处理 棘手的部分是我不希望 div 看起来像在移动 如果您只是对边框进行动画处理 整个 div 看起来会
  • 如何创建接受用户输入的 Siri Intent

    我创建了一个自定义 Intent 其参数如下 我已经捐了 let intent PlayIntent intent color color let interaction INInteraction intent intent respon
  • Silverlight HTTP POST 几个变量,最简单的示例(最少的代码)

    您好 我想将一些数据从 silverlight 发布到网站 我发现了以下内容link它有效 然而 这个例子太复杂了 看得我眼睛疼 另外 Flex 示例更干净 更少的代码 我想说一定有更好的解决方案 供参考 我们发布 2 个变量 字符串 并读
  • 访问 Bottlepy after_request 挂钩中的响应对象

    我有以下网络应用程序 import bottle app bottle Bottle app route ping def ping print pong return pong app hook after request def aft
  • IndexedDB 性能和 IndexedDB 与 WebSQL 性能比较

    WebSQL 和 IndexedDB 都是用于在 Web 浏览器中访问 CRUD 底层嵌入式数据库的 DB API 如果我没猜错的话 这就像用于访问 CRUD 任何客户端服务器数据库 如 Oracle 等 的 SQL 在许多情况下 同一浏览
  • 属性错误:next()

    我想使用循环一层深度next with os walk 我的代码的关键行 for root dirs files in os walk dir next 1 Error AttributeError 生成器 对象没有属性 下一个 我尝试使用
  • 如何在 React 中使用钩子预先初始化状态?

    基本上在类组件中 我们使用如下所示的初始值在构造函数中预先初始化状态 constructor props super props this state count 0 但是引入钩子之后 所有类组件都变成了带有状态的功能组件 但我的问题是如何
  • 将节点/属性添加到表达式树

    这是我第一次真正处理表达式树 我有点迷失 我很抱歉 如果 这个问题根本没有任何意义 考虑以下类 public class Foo
  • stargazer omit.labels 中的潜在错误

    5 2版本似乎有一个bugstargazer包 其中omit label根据所包含模型的顺序 功能不会一致地工作 library stargazer library ggplot2 as data frame data midwest fi
  • 我可以强制 SoapClient 将数组作为数组返回吗?

    我正在使用 SoapClient 获取一些数据 我从其中一个电话中得到了这个结果 stdClass Object payTransIncome gt stdClass Object item gt stdClass Object payTr
  • 为 iOS 创建 ionic 资源不再有效

    我正在准备我的离子应用程序在 iOS 应用程序商店中进行更新 但我现在真的陷入困境 因为使用生成资源ionic resources不再起作用了 在终端中运行命令后 它开始上传我放入文件夹中的资源 然后告诉我上传已成功完成 然后完全冻结 An
  • 是否可以并行运行同一子项目中的两个独立的 gradle 任务?

    在我工作的项目 基于 gradle 中 有一个非常大的模块 gradle 子项目 在 CI 构建过程中 该子项目中的两个任务按顺序执行 这会导致大量的执行时间 该项目使用org gradle parallel true 但是当我创建简单的项