背景
公司的网关用的是openresty(基于nginx+lua),所以接触了下lua,lua在我看来也算属于脚本语言,轻量级,运行时判断类型
安装lua
打开官方文档https://www.lua.org/download.html,照着装,由于我是mac,最后一条指令采用make macosx test,一般情况这里应该有个make install啊,这里咋没说呢,我就手动link lua这个文件到/usr/local/bin里了,这里有个坑待会说
安装luarocks
luarocks是用来安装lua的一些三方lib库,跟Python的pip很相似,安装教程依旧参考官网,实例代码的意思在安装luarocks完,安装个socket模块并通过require来测试安装成功
$ wget https://luarocks.org/releases/luarocks-3.0.4.tar.gz $ tar zxpf luarocks-3.0.4.tar.gz $ cd luarocks-3.0.4 $ ./configure;
$ sudo make && sudo make install $ sudo luarocks install luasocket $ lua Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio > require "socket
这里configure的时候回报错lua.h找不到,原因是因为我们在安装lua的时候没有执行make install,补上这一步,看截图知道这一步做了很多事不可省掉,而官网不知道为啥省掉了这一步
定位下刚才的socket模块会发现安装到了/usr/local/share/lua/5.3下
调试
idea 安装插件EmmyLua