3

我如何(以及我需要什么工具)创建一个生成文件:

  • 合并所有 JavaScript '/js/*.js'(以手动顺序 - 可能与 cat 一起)
  • 验证组合脚本是否适用于单元测试(使用 qUnit)
  • 缩小 JavaScript
  • 验证缩小的脚本是否适用于相同的单元测试

我希望 makefile 在 Mac OS 命令行上工作。

我会将 Makefile 上传到 GitHub 存储库,所以我想要其他开发人员能够轻松使用的东西。

4

2 回答 2

0

这是一个您可以寻找灵感的复杂脚本:

https://github.com/mobilizejs/mobilize.js/blob/master/release.py

(也检查自述文件)

通常总会有项目特定的用例,一个解决方案并不适合每个项目,因此每个人都在做临时脚本。此外,makefile 最终还是非常有限的——我建议选择一个真正的脚本工具。

于 2011-09-01T00:32:40.623 回答
0

感谢所有建议,这是我决定采用的解决方案:

  • Makefiles - 真的只是一个快捷方式
  • Google V8 - 从命令行执行 JavaScript

我可以使用 JavaScript 轻松执行缩小和单元测试。

我对 V8 附带并在 OS X 上编译的示例 shell 应用程序进行了一些小的更改(增加了写入文件的能力)。我计划以某种方式在 32 位和 64 位的 OS X 和 Windows 上进行交叉编译。我将在 GitHub 存储库中包含 V8 和自定义应用程序源的二进制文件。我将为想要自定义或重新编译的人提供获取和编译 V8 的说明。

V8 将完成所有工作(基本上)。虽然我还没有把所有这些东西放在一起,但我相信这应该会奏效。

唯一的缺点是基于 DOM 的单元测试不能自动化。从 Chromium 项目中获取 DOM 内容是可能的,但这可能太耗时了。我会把它留给一个热心的贡献者(如果有人愿意的话)。

于 2011-09-02T22:40:36.327 回答