2

其他包管理器有一个锁定选项。例如,在开发机器上,您可能有某些包和某些版本。目标是在登台或生产环境中安装这些相同的包和版本。有时这称为收缩包装或锁定。

luarocks 有类似的东西吗?

4

1 回答 1

1

从 LuaRocks 2.4.2 开始,不幸的是,这不能作为单个命令使用。

但这里有一系列产生类似效果的操作。

在开发机器中:

mkdir packages
cd packages
luarocks list --porcelain | awk '{print $1}' | uniq > packages.txt
for p in $(cat packages.txt); do luarocks pack $p; done
luarocks-admin make-manifest .
cd ..
tar czvpf packages.tar.gz packages

复制packages.tar.gz到目标机器然后运行:

tar zxvpf packages.tar.gz
luarocks --only-server=./packages install foo

这将仅从packages/目录(而不是从网络)安装包“foo”选择依赖项和子依赖项,因此所有依赖项都保证是您在开发机器中打包的依赖项。

于 2016-12-26T16:21:39.687 回答