Erlang edoc 多级目录出错
Erlang edoc 多级目录出错
使用rebar doc来生成项目文档。
但是当erl源文件目录src下建立子目录,并新建erlang文件后,就无法生成文档。
例如,新建 src/tttt/, 并添加 dd_util.erl 文件。
D:\six>d:/tools/rebar/rebar.cmd doc
==> six (doc)
ERROR: doc failed while processing D:/six: {'EXIT',{function_clause,[{edoc,expan
d_sources,
[[{tttt,"dd_util.erl","./src/tttt"},
{'',"gateway_http.erl","./src"},
{'',"six.erl","./src"},
{'',"six_app.erl","./src"},
{'',"six_sup.erl","./src"}],
".erl",
{set,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],
[],[],[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],
[],[],[],[]}}},
[],[]],
[{file,"edoc.erl"},{line,459}]},
{edoc,run,3,[{file,"edoc.erl"},{line,378}]},
{rebar_edoc,doc,2,
[{file,"src/rebar_edoc.erl"},{line,63}]},
{rebar_core,run_modules,4,
[{file,"src/rebar_core.erl"},
{line,491}]},
{rebar_core,execute,6,
[{file,"src/rebar_core.erl"},
{line,416}]},
{rebar_core,maybe_execute,8,
[{file,"src/rebar_core.erl"},
{line,300}]},
{rebar_core,process_dir1,7,
[{file,"src/rebar_core.erl"},
{line,259}]},
{rebar_core,process_commands,2,
[{file,"src/rebar_core.erl"},
{line,91}]}]}}
D:\six>
在rebar.config中添加参数{packages, false}解决了。
{deps, [{mysql, ".*", {git, "https://github.com/dizzyd/erlang-mysql-driver.git"}},
{lager, ".*", {git, "https://github.com/basho/lager.git"}},
{mochiweb, ".*", {git, "https://github.com/mochi/mochiweb.git"}}]}.
{erl_opts, [{parse_transform, lager_transform}]}.
{edoc_opts, [{packages, false}]}.
大概是Erlang多层目录会建立“subpackages”,应该就是模块名字空间:
If the source code is organized in a hierarchy of subdirectories although it does not use packages, use no_packages
但是没有找到相关的文档,不知道如何建立子包。
参考:
http://www.erlang.org/documentation/doc-5.8.4/lib/edoc-0.7.8/doc/html/edoc.html#run-3
http://www.erlang.org/documentation/doc-5.8.4/lib/edoc-0.7.8/doc/html/chapter.html#Running_EDoc
Erlang edoc 多级目录出错的更多相关文章
- Windows Azure Storage (22) Azure Storage如何支持多级目录
<Windows Azure Platform 系列文章目录> 熟悉Azure平台的读者都知道,Azure Blob有三层架构.如下图:(注意blob.core.chinacloudapi ...
- php使用递归创建多级目录
<?php header('Content-type:text/html;charset=utf8'); echo "Loading time:".date('Y-m-d H ...
- PHP判断文件夹是否存在和创建文件夹的方法(递归创建多级目录)
在开始之前,我先说明一下,可能许多朋友与我一样认为只要给一个路径,mkdir就可以创建文件夹,其实不是那样,单个的MKDIR只能创建一级目录,对于多级的就不行了,那如何用mkdir来创建呢?先我抄一段 ...
- PHP 检查并创建多级目录
<?php //检查并创建多级目录 function checkDir($path){ $pathArray = explode('/',$path); $no ...
- MVC 多级目录(控制器) 路由重写 及 多级Views目录 的寻找视图的规则
转自:[原]Asp.net Mvc 多级控制器 路由重写 及 多级Views目录 的寻找视图的规则 asp.net mvc 为了更好的控制views的页面存放,和控制器的可读性,需要分开多级目录来 ...
- 二、处理MVC多级目录问题——以ABP为基础架构的一个中等规模的OA开发日志
就个人感觉而言.ASP.NET MVC是一种非常反人类的设计.(我没有接触过Java的MVC,不知道两者是否一样.如果一样,那么搞Java的同学也挺可怜.)尤其是MVC的路由机制,灰常灰常反动.路由所 ...
- MVC 多级目录菜单
MVC多级目录菜单 ----- 简单模拟 Model ---- cs { public class Class1 { public int ID{get;set;} public int paren ...
- php创建多级目录的两种方法
1.使用递归的思想 function mkdirs_2($path){ if(!is_dir($path)){ mkdirs_2(dirname($path)); if(!mkdir($path, 0 ...
- PHP递归创建多级目录(一道面试题的解题过程)
今天看到一道面试题,要写出一个可以创建多级目录的函数: 我的第一个感觉就是用递归创建,具体思路如下: function Directory($dir){ if(is_dir($dir) || @mkd ...
随机推荐
- bzoj 2118: 墨墨的等式
Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+-+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在 ...
- POJ 1486二分图的必要边
题意:有n个大小不等透明的幻灯片(只有轮廓和上面的数字可见)A.B.C.D.E…按顺序叠放在一起,现在知道每个幻灯片大小,由于幻灯片是透明的,所以能看到幻灯片上的数字(给出了每个数字的坐标,但不知道这 ...
- 【网络流】【BZOJ1221】【HNOI2001】软件开发
原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1221 题意:你有3种方法进行对毛巾的处理,不同的处理方法有不同的cost,问你要如何规划才 ...
- HDU2303(数论)大整数求余+素数筛选
Sample Input 143 10 143 20 667 20 667 30 2573 30 2573 40 0 0 Sample Output GOOD BAD 11 GOOD BAD 23 ...
- 音频自动增益 与 静音检测 算法 附完整C代码
前面分享过一个算法<音频增益响度分析 ReplayGain 附完整C代码示例> 主要用于评估一定长度音频的音量强度, 而分析之后,很多类似的需求,肯定是做音频增益,提高音量诸如此类做法. ...
- IPQ4028开启I2C功能
0 概述 IPQ4028是一款集约式4核心ARM7 SOC芯片,内嵌独立双频WiFi子系统,offload式,支持MU-MIMO,最高支持1.2Gbps.标准的官方Demo方案中,IPQ4019开启了 ...
- Python Django的分页,Form验证,中间件
本节内容 Django的分页 Form 中间件 1 Django 分页 1.1 Django自带的分页 1.首先来看下我的测试数据环境 ############ models.py ######### ...
- Xamarin开发缺少的android_m2repository_rxx.zip下载地址以及MD5
android_m2repository_rxx.zip下载地址以及MD5, 注意:下载后需要改文件名,改为 MD5的值.zip 例如:android_m2repository_r29.zip 需改 ...
- Windows2003无法连接远程桌面问题 解决方法!
按照以下步骤来一一排除问题吧! 步骤1.遇到这样的情况,通常情况下我们都是先检查远程有没有开启,就是右击我的电脑查看属性里的远程前面的框框有没有勾上,勾上后即可远程,metsc 127.0.0.1 ...
- 【给你一个承诺 - 玩转 AngularJS 的 Promise】
了解Promise 在谈论Promise之前我们要了解一下一些额外的知识:我们知道JavaScript语言的执行环境是"单线程",所谓单线程,就是一次只能够执行一个任务,如果有多个 ...