erlang自动编译与加载
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

60 行
2.8 KiB

  1. [
  2. {eSync, [
  3. %% 编译命令 支持项目自带的编译命令 也可以用该项目自带的编译逻辑
  4. %% "rebar3 compile" | "start compile.bat" | "make"
  5. {compileCmd, undefined},
  6. %% 编译和加载以及其他一些日志的提示级别设置
  7. %% 有效值: all | none | [success | warnings | errors]
  8. %% 默认值: all
  9. {log, all},
  10. %% base dir
  11. %% 默认值: "./"
  12. {baseDir, "./"},
  13. %% monitor file ext 监听文件的后缀名列表
  14. %% 默认值: [".hrl", ".erl", ".beam", ".dtl", ".lfe", ".ex", ".config"]
  15. {monitorExt, [".hrl", ".erl", ".beam", ".dtl", ".lfe", ".ex", ".config"]},
  16. %% 这个参数用于设置特殊目录下的文件检查编译与加载
  17. %% 格式:{extraDirs, [{strategy(), [srcDirDescr()]}] | undefined}
  18. %% -type strategy() :: only | del | addExtra | addOnly.
  19. %% 如果 strategy() when addExtra, 会无条件监听添加的指定目录及其子目录同步编译与加载.
  20. %% 如果 strategy() when addOnly, 会无条件监听添加的指定目录(不含子目录)同步编译与加载.
  21. %% 如果 strategy() when only, 仅仅监听指定目录及其子目录下的文件编译与加载.
  22. %% 如果 strategy() when del, 则不会监听该目录及其子目录下的文件.
  23. %% -type srcDirDescr() :: { Dir :: file:filename(), [Options :: compile_option()]}.
  24. %% 默认值:undefined 根据当前工作目录 和 已经加载的模块做来得出需要扫描的目录
  25. %%示例: {extraDirs, [{addExtra, [{"./_build/default/lib/erlGbh", []}]}, {only, [{"./", []}]}, {del, [{"./_build", []}]}]}.
  26. %%{extraDirs, [{add, [{"./_build/default/lib/erlGbh", []}, {"./_build/default/lib/eSync/ebin", []}]}, {only, [{"./", []}]}, {del, [{"./_build", []}]}]}
  27. {extraDirs, [{strategy(), [srcDirDescr()]}]},
  28. %% 这个参数用来设置 怎么处理 当beam文件的源文件目录不是当前工作的子目录时的情况
  29. %% 有效值: fix | allow | ignore
  30. %% * fix = 尝试在当前目录下查找源文件
  31. %% * allow = 不要做任何特别的事情,使用beam源文件原始路径查找该文件
  32. %% * ignore = 而忽略对其源路径的任何更改
  33. %% 默认值: fix
  34. {descendant, fix},
  35. %% Beam更新回调函数 格式: undefined | {Mondule, Fun} | [{Mondule, Fun}, ...], Fun函数只有一个参数
  36. {onMSyncFun, undefined},
  37. %% config更新回调函数 格式: undefined | {Mondule, Fun} | [{Mondule, Fun}, ...], Fun函数只有一个参数
  38. {onCSyncFun, undefined},
  39. %% 是否开启集群同步加载
  40. {swSyncNode, false},
  41. %% 仅仅内存编译还是编译写入到磁盘去
  42. {isJustMem, false},
  43. %% 如果存在debug_info_key 需要用户提供获取debug_info_key的函数 格式: undefined | {Mondule, Fun}
  44. %% this fun need return: {debug_info_key, xxx}
  45. {debugInfoKeyFun, undefined}
  46. ]}
  47. ].