什么是在 Lua 项目中管理开发依赖的推荐方法?

我正在构建一个 Lua 库(实际上是一个内部的 kong 插件),这是我第一次使用 Lua - 更不用说用它编写生产代码了。

我将其作为一个 luarock。从我所看到的来看,rockspec 允许我指定其他库作为依赖项。但是似乎没有所谓的 dev-dependencies 的概念。比如,我需要用于测试、模拟等的库...我宁愿不将它们作为实际依赖项的一部分。

我已经将我的开发依赖项放在依赖列表中,但在 git push 之前将它们注释掉。在生产 Lua 项目中通常是如何解决的?管理这些依赖项的推荐方法是什么?

点赞
用户6889435
用户6889435

没有标准的 Lua 依赖管理系统,但你可以尝试以下两种:

  • LuaRocks:包含大量的 Lua 模块,以 rock 的形式分发。一旦安装了 LuaRocks,安装就很简单:luarocks install desired-package。在 Linux/Unix/Mac 上,这将安装到 /usr/local/{share,lib}/lua/5.1,这是 Lua 解释器查找模块的地方。

  • LuaDist:旨在创建一个独立的带有 Lua 和模块的目录(dist)。LuaDist 所有内容都基于 CMake,这意味着可以使用 CMake 支持的任何编译器/IDE 进行轻松编译。LuaDist 还有一个包含 Lua 模块和许多 C 依赖/库的广泛仓库,这使得可以创建一个真正独立的 Lua "分发"。安装方法和 LuaRocks 相同:luadist install desired-package

个人而言,我更喜欢 LuaRocks。

2018-08-21 05:55:02