IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Erlang dialyzer 使用

    DLive发表于 2015-07-01 01:58:44
    love 0
    在用rebar构建的项目里,研究了一下dialyzer的使用。发现rebar支持的并不是很友好。在一些情况下会直接报错退出。在工具的使用上,如果没有足够的时间去研究他的源码,则最好寻找最快捷的解决方案。比如用原生的dialyzer命令。简单的使用脚本如下dialyzer.sh #!/bin/sh DEPS=./deps APPS=./apps function build_plt(){ dialyzer --build_plt \ --apps erts kernel stdlib mnesia crypto sasl xmerl ssl tools syntax_tools \ -r $DEPS $APPS } function dialyze(){ dialyzer -r $APPS/android_push_logic \ $APPS/push_server \ $APPS/push_common } case "$1" in dialyze) dialyze exit 0 ;; build) build_plt exit 0 ;; *) echo $DIR echo 'Usage: {dialyze|build}' ;; esac如果一定要使用rebar提供的方法,则需要在rebar.conf里进行配置{dialyzer, [ {plt_extra_apps,[your_apps]}, {warnings,[ unmatched_returns, error_handling, race_conditions ]} ]}.然后使用的命令行如下./rebar -r build-plt skip_apps=cowboy,mochiweb,cowlib ./rebar -r dialyze skip_apps=cowboy,mochiweb,cowlib又撸了个片子。


沪ICP备19023445号-2号
友情链接