erlang自动编译与加载
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
SisMaker ee07ad6d68 修正 该项目作为依赖时 fileSync文件的启动查找目录 4 년 전
include 部分代码优化 4 년 전
src 修正 该项目作为依赖时 fileSync文件的启动查找目录 4 년 전
.gitignore 代码初始化 5 년 전
LICENSE Initial commit 5 년 전
README.md 打印日志修改 4 년 전
erlSync.sample.config readme 修改 4 년 전
rebar.config 打印日志修改 4 년 전

README.md

erlSync

otp21.2+
Erlang即时重新编译和重新加载!

基于 fsnotify 跨平台文件系统通知。

改造自 sync

封装的监听文件项目fileSync 如果要自己构建执行文件, 拉取监听文件项目, 然后 go build 复制执行文件到该工程的 priv 目录即可

特点

本项目实现了自带编译与加载功能,另外支持额外的编译命令,但是执行额外的编译命令是通过os:cmd(),会阻塞VM不是很建议使用.
启动后,erlSync会收集监听目录下的源文件和编译选项等的信息。
不仅适用于开发模式,也可以在生产环境中运行。
注意:linux下拉取项目后  需要给priv目录下的执行文件添加执行权限

使用

启动自动编译与加载 
    erlSync:run().
暂停自动编译与加载
    erlSync:pause().
启动或者关闭集群同步加载
    erlSync:swSyncNode(TrueOrFalse).
设置编译与加载日志提示
    erlSync:setLog(Val).
设置加载后的钩子函数(支持匿名函数, {Mod, Fun}(Fun函数只有一个参数)格式, 以及他们的列表组合)
    erlSync:setOnsync(FunOrFuns).   

配置说明

参见erlSync.sample.config
默认配置为
[ 
    {erlSync,
        [
            {listenPort, 12369},
            {compileCmd, undefined},
            {extraDirs, undefined}
            {log, all},     
            {descendant, fix}
        ]      
    } 
]