2009-09-10 137 views
72

Rake是一个用Ruby编写的软件构建工具(如ant或make),所以它的所有文件都是用这种语言编写的。在Python中是否存在这样的事情?在Python中是否有Rake等价物?

+3

您是否正在寻找一个通用的依赖关系解析和构建工具,比如make,它可以从任何语言构建项目?或者是专门构建python包的东西? – 2009-09-10 21:34:59

+1

东西一般。构建Python包很有趣,但可以使用通用工具来执行。 – 2009-09-10 22:50:11

+1

也见:http://stackoverflow.com/questions/542289/are-there-any-good-build-frameworks-written-in-python – 2010-03-14 07:31:31

回答

26

Paver有一组类似的目标,虽然我真的不知道它是如何比较的。

+0

这似乎是最接近的。 – 2009-09-10 22:53:57

+0

这似乎[2011年失去动力](http://paver.github.io/paver/changelog.html#changelog) – 2014-06-30 04:32:05

+2

该项目仍然活跃,变更日志现在在这里:https://pythonhosted.org /Paver/changelog.html – 2014-08-15 00:03:50

-1

我想看看distutils

distutils包提供建设支持 和安装额外的 模块集成到一个Python安装。 新模块可以是 100%纯度为Python或可以是用C语言编写的扩展 模块,或者可以是Python包,其包括 在两者的Python 和C.

+0

它支持像文档生成或运行单元测试这样的事情吗? – Wernight 2011-10-05 07:22:24

5

编码模块 集合Waf是一个用于配置,编译和安装应用程序的基于Python的框架。它来源于其他构建工具的概念,如Scons,Autotools,CMake或Ant。

+1

Waf其他scons有什么好处? – 2009-09-10 22:51:25

0

另外检查buildout,这不是一个make软件系统,而是一个部署make系统。

http://pypi.python.org/pypi/pysqlite/2.5.5

所以它不是一个直接的耙相当,但可能是你想要做什么更好的匹配,或一个真正糟糕的一个。

+1

使用buildout就像是一个坦克去商场购物,不是吗?无论如何,在Zope/Plone之外使用任何Zope/Plone工具通常都是:-p – 2009-09-10 22:52:48

+0

“为了那个”?他没有具体说明他想要用什么。 无论如何,buildout不是Zope/Plone工具。它也不大或很复杂。这真是令人厌倦,有些人会因为Zope开发人员编写或使用该工具而解雇工具。这种态度非常愚蠢。 – 2009-09-11 06:45:21

+0

来吧,那只是戏弄。我曾经为一家只有Plone的公司工作,是的,我们用来对我们使用的工具做很多笑话。这是一种理智的态度,你不觉得吗? – 2009-09-11 11:10:37

4

虽然它更常用于部署,但Fabric可能对此用例很有意思。

33

Invoke - Fabric没有SSH的依赖。

Fabric roadmap讨论Fabric 1.x的将被分成三个部分:

  1. Invoke - 非SSH任务执行。
  2. Fabric 2.x - 使用Invoke的远程执行和部署库。
  3. Patchwork - “构建在Fabric上的常见部署/系统管理操作”。

调用是一个Python(2.6+和3.3+)任务执行工具&库,绘制各种来源的灵感,在强大的&清洁功能集到达。

下面是Invoke的网站上一些描述性语句:

  • 调用是一个Python(2.6+和3.3+)任务执行工具&库,从各种渠道汲取灵感,以在到达强大的&清洁功能集。
  • 与Ruby的Rake工具和Invoke自己的前任Fabric 1.x一样,它提供了一个干净的高级API,用于运行shell命令以及从tasks.py文件定义/组织任务函数。
+1

现在它不能在Windows上工作 - https://github.com/pyinvoke/invoke/pull/119 – 2014-06-17 04:17:30

+0

@IgorZevaka现在它在Windows上工作,同一主题 - github.com/pyinvoke/invoke/pull/119 – 2015-06-14 17:51:39

1

还有doit - 我碰到它,而前一段时间找这些东西,虽然我没有计算它走得很远。

相关问题