写点什么

Twitter 发布了多语言的构建工具 Pants 1.0

  • 2016-06-05
  • 本文字数:790 字

    阅读完需:约 3 分钟

经过 5 年的不懈努力,Twitter 于近日发布了构建工具 Pants 的里程碑版本 1.0。Pants 与 Maven、Gradle 以及 Ant 等流行的构建系统定位相似,不同的是它支持 C/C++、Java、Python 和 Scala 等语言。Twitter 将可伸缩性需求作为驱动 Pants 向前发展的动力。

该版本包含的一些特性包括:

  • 更简单的安装流程(详细信息见下面介绍)
  • 重新定义的、一致的弃用策略

之所以开始开发 Pants,是因为 Twitter 发现他们所使用的构建工具并不能随着增长的需要而进行扩展。经过了两年多的开发和内部使用之后,Twitter 将 Pants 贡献给了开源社区。

Pants 通过一个独立的大型仓库(也称为“monorepo”)应对代码维护的挑战。如果版本控制系统和构建工具并不能随着业务的增长而进行扩展,那么一次复杂构建的性能就会快速下降。通过利用细粒度的依赖管理、并行任务执行以及增量编译等特性 Pants 能够构建一个大型的 monorepo。而很多其他流行的构建系统并不是为这一目标而设计的。

Pants 能够被集成到已有的 Java 项目中,因为它能够识别出标准的源代码和测试目录命名约定,例如 Gradle 的 src/main/java 和 src/test/java。对于有兴趣从 Maven 迁移到 Pants 上的开发者而言,可以查看 Twitter网站上的说明。而IntelliJ IDEA 用户则能够体验 Pants 插件

Pants 可以被安装到任何新的或者已有项目的根文件夹下,命令如下:

curl -L -O https://pantsbuild.github.io/setup/pants && chmod +x pants && touch pants.ini该安装会自动建立一个具有合适权限的、能够在本地执行的 Pants,同时还会创建一个空的待编辑文件 pants.ini。

Pants 目前并不支持 Windows 操作系统,开发者可以在 Linux 和 Mac OS X 上体验 Pants 社区版。此外,开发者可以通过下面几种方式向该项目提交贡献或者寻求帮助:

查看英文原文: Twitter Releases Pants 1.0 Polyglot Build Tool

2016-06-05 19:003161
用户头像

发布了 321 篇内容, 共 118.8 次阅读, 收获喜欢 19 次。

关注

评论

发布
暂无评论
发现更多内容

提前批到底影不影响正式批?

KEY.L

7月月更

React 学习记录2📝

程序员海军

React 7月月更

次轮Okaleido Tiger即将登录Binance NFT,引发社区热议

鳄鱼视界

数据资产管理的概念

奔向架构师

数据资产 7月月更

传统车企数字化转型如何打通最后一公里?

雨果

车联网 DaaS数据即服务

C# 中的转译字符'/b'

陈言必行

7月月更

缓存一致性与内存屏障

蝉沐风

volatile 内存屏障 缓存一致性 MESI

在灯塔工厂点亮5G,宁德时代抢先探路中国智造

脑极体

聊聊自动化测试的度量指标

老张

自动化测试 质量度量

Prometheus 运维工具 Promtool (三)Debug 功能

耳东@Erdong

Prometheus 7月月更 Promtool

小程序怎样助力智能家居生态新模式

Geek_99967b

物联网

客户案例 | 关注老年用户体验,银行APP适老化改造要避虚就实

易观分析

用户体验 银行app 老龄化

关于 StatefulWidget,你不得不知道的原理和要点!

岛上码农

flutter ios 前端 安卓开发 签约计划第三季

Bootstrap的导航元素和Well详解【前端Bootstrap框架】

恒山其若陋兮

7月月更

Okaleido Tiger 7.27日登录Binance NFT,首轮已获不俗成绩

BlockChain先知

Plato Farm通过LaaS协议Elephant Swap,为社区用户带来全新体验

股市老人

参数解析与跳石板

未见花闻

7月月更

Plato Farm有望通过Elephant Swap,进一步向外拓展生态

鳄鱼视界

Mybatis中LRU缓存实现

Geek漫游指南

mybatis LRU mybatis源码

【函数式编程实战】(七) Collection在Java8和9中的增强

小明Java问道之路

Lambda collection Stream API 7月月更 签约计划第三季

为啥国内大厂都把云计算当成香饽饽,这个万亿市场你真的了解吗

雨果

DaaS数据即服务

平成千字文(へいせいせんじもん)    (平成12年9月10日 石渡 明 作)  宇宙広遠 銀河永久 日月運行 不乱無休 地球公転 季節変移 黄道星座 太陽年周 故郷群島 南熱北冷 海洋温暖 気候順良 青空飛雲 諸野深緑 湖泉静息 谷川清流 春桜一面 新芽

贾献华

7月月更

2200字详细讲解计算机网络的“流量管理员”:QoS 服务质量

wljslmz

流量控制 QoS 网络技术 7月月更

第五届数字中国奖项出炉,昇腾人工智能融合赋能平台斩获十佳首展成果奖

Geek_2d6073

【函数式编程实战】(八) 如何将你的代码重构

小明Java问道之路

设计模式 函数式编程 7月月更 签约计划第三季 Lambda表达式

【函数式编程实战】(九) Optional实战大全

小明Java问道之路

java8 Optional Stream API 7月月更 签约计划第三季

模块8(消息队列存储消息数据的mysql表格)

Geek_701557

次轮Okaleido Tiger即将登录Binance NFT,引发社区热议

股市老人

音乐体验天花板!14个网易云音乐的情感化设计细节

张姣发

创新 交互设计 网易云音乐

Twitter发布了多语言的构建工具Pants 1.0_Java_Michael Redlich_InfoQ精选文章