zoukankan      html  css  js  c++  java
  • kong 插件开发分析

    1.安装开发环境:(我这里用IntelliJ IDEA)

    先安装lua 5.1和luarocks

    因为kong基于openresty,openresty使用luajit luajit支持的是lua5.1,所以我们这里直接编译安装lua5.1,然后编译安装luarocks

    刚开始我先用brew install luarocks,导致安装了lua5.3和5.1版本,在luarocks build的时候报错module 'luarocks.core.path' not found,后续直接编译安装lua5.1和luarocks解决问题

    git clone https://github.com/Kong/kong.git
    cd kong
    luarocks init
    ./luarocks build (安装在代码环境,不会安装模块到操作系统环境)
    

      

    2.IDEA设置sdk

    File -> Project Structure->SDKs
    

     

    在SDK窗口中选择当前使用的SDK,譬如LuaJ,在它的ClassPathSourcePath中添加项目目录外的代码路径,点击界面下方的“+”添加。至少要把本地安装的Lua模块目录添加到SDK的ClassPath/SourcePath中,例如在Mac上,lua代码被安装在:

    /usr/local/share/lua/5.1/
    

    在Mac上为Idea的SDK添加代码目录时,在“+”弹出的对话框中可能找不到/usr目录,可以做一个符号连接,将符号连接添加到SDK中,例如:

    ln -s /usr/local/share/lua/5.1 ~/Bin/lua-5.1-sdk
    

    如果项目用到了OpenResty,将OpenResty的模块路径添加到SDK的ClassPath/SourcePath中,Mac上用brew安装的OpenResty的package目录是:

    /usr/local/Cellar/openresty/1.13.6.2/lualib/
    

    可能也需要做符号连接:

    ln -s /usr/local/Cellar/openresty/1.13.6.2/lualib ~/Bin/openresty-1.13.6.2-lualib



  • 相关阅读:
    rabbitmq无用使用guest用户远程连接
    SpringMVC 过滤器
    Spring MVC的Controller统一异常处理:HandlerExceptionResolver
    springMVC之mvc:interceptors拦截器的用法
    spring中排除某个类
    mysql中的CURRENT_TIMESTAMP
    [QT]Qt+VS2012+Win8 64Bit安装
    UOJ#55. 【WC2014】紫荆花之恋
    CodeChef SADPAIRS:Chef and Sad Pairs
    BZOJ4771: 七彩树
  • 原文地址:https://www.cnblogs.com/mikeluwen/p/10494860.html
Copyright © 2011-2022 走看看