加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala构建工具SBT vs CBT

发布时间:2020-12-16 09:01:01 所属栏目:安全 来源:网络整理
导读:我目前正在使用SBT来构建我的 scala项目,但是最近我学习了另一个名为 CBT的构建工具. 我可以从CBT文档中看到一个明显的优势,编写构建文件与编写scala代码一样好. 我想知道使用它的人的性能,构建时间等构建工具的比较优缺点. 解决方法 我是CBT的作者. TL; DR
我目前正在使用SBT来构建我的 scala项目,但是最近我学习了另一个名为 CBT的构建工具.

我可以从CBT文档中看到一个明显的优势,编写构建文件与编写scala代码一样好.

我想知道使用它的人的性能,构建时间等构建工具的比较优缺点.

解决方法

我是CBT的作者.

TL; DR CBT在某些领域更简单,更快,但更年轻,更少实践证明.

长版:

CBT旨在使用比SBT更简单,同时与Maven或Ant等旧工具相比,在表现力方面具有相似的优势.我相信CBT在这里提供.它还在引用任务(方法)时为您提供类型安全性,其中在SBT中,任务可能会也可能不会在您从中读取的范围中定义.性能方面CBT从bash启动时间更快(约100ms),并通过OS推送通知立即响应文件更改,而不是SBT的0.5s间隔轮询.

此时CBT的实践证明不如SBT,您可能会发现一些粗糙的边缘.特别是现在很少有文件,我打算尽快改变.您还可以找到更少的在线CBT构建示例.然而,CBT的repo中有examples文件夹和测试.你可能还会发现一些插件的盲点.存在所有的linters,代码格式化器,编译器,发布插件.打包和IDE支持仍需要重大改进.插件很容易编写和添加.

CBT的源代码在概念上非常简单,易于使用的初学者友好代码,部分原因是CBT在更改??后自动重建,使其立即可用. SBT的代码库更难掌握,我不知道如何实际使用本地更改的代码库,我想部署快照构建.

CBT目前不会同时运行任务或构建项目.它可能永远不会对项目中的任务执行此操作,但可能会为不同的子项目启动并发编译. SBT尽可能并行化任务(或假设可能).我不认为CBT的表现会因为没有这样做而受到影响.总的来说非常活泼.

CBT尚未在大型项目上进行过战斗测试. CBT本身是一个多项目构建,> 10个子项目,但这可能是迄今为止尝试过的最大项目.

所以现在(并且在几周和几个月内会迅速改善)如果您选择CBT准备好阅读大量的源代码,请使用gitter通道与我们交谈,不要使用IDE或自己配置,帮助修复较小的,肤浅的可用性错误没有人打扰到修复.

如果你想要更好的,更好的支持,更有文档记录,更复杂的工具,更多的副本和可用的例子以及更多的在线插件,请选择SBT.如果你想要一个更简单,更易于使用,更快速,几乎没有文档的代码库工具,你可以快速理解,但你现在有时可能需要修复自己现在使用CBT.

最近还有关于CBT的视频:https://youtu.be/-2aMaAPQ35s

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读