在lua中有类似python的virtualenv吗?
所以我可以在沙盒环境中安装所有必需的lua模块/岩石。这对测试很有用,因为我不会搞乱系统范围的lua模块或其他lua项目的环境。
自从self-contained installation的支持以来,luarocks看起来很有希望。但是我很感兴趣,如果有像virtualenv这样的工具可以自动创建,维护和切换沙盒环境。答案 0 :(得分:5)
您是否尝试过LuaDist?
它通过使用所谓的“部署”解决了这个问题 - 它是一个单独的目录,其中安装了所有依赖项和库(甚至是Lua解释器),与整个系统无关。
答案 1 :(得分:4)
通过设置LUA_PATH
环境变量来切换Lua安装应该相当简单。从Lua文档中引用this page:
要确定其路径,首先需要检查全局变量LUA_PATH。如果LUA_PATH的值是字符串,则该字符串是路径。否则,需要检查环境变量LUA_PATH。
[...]
路径中的组件由分号分隔(在大多数操作系统中很少用于文件名的字符)。例如,如果路径是
?;?。lua; c:\ windows \?; / usr / local / lua /?/?。lua
然后调用要求“lili”将尝试打开以下文件:
利利
lili.lua
C:\ WINDOWS \丽丽
/usr/local/lua/lili/lili.lua
答案 2 :(得分:2)
看起来vert正是您要找的。
与Python中的virtualenvwrapper
类似,它允许您定义自包含的Lua环境。
此外,它可以从 luarocks 获得。
答案 3 :(得分:-1)
在Lua 5.1中有环境表,您可以将其放入全局变量中,然后将该表作为_G加载到字符串或文件中,封装该文件。