undefined function mochiweb_html:parse / 1

时间:2011-11-27 07:24:13

标签: erlang

我正在尝试在模块中使用mochiweb,但无法找到让模块“识别”mochiweb的方法。

mochiweb_html:parse("<XML>").

这在 erl 中工作正常,但是当我在模块中使用它时,我会不断获得undefined function

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,这听起来像是一个代码路径问题。只要mochiweb_html.beam在您的代码路径中,您就可以使用任何导出的函数。

从erlang shell(erl)运行它可能有效,因为beam文件在你的cwd中。

例如:

# cd /home/blah/src/mochiweb/ebin; erl
1> code:where_is_file("mochiweb_html.beam").
"./mochiweb_html.beam"

# cd /tmp; erl
1> code:where_is_file("mochiweb_html.beam").
non_existing

确保包含mochiweb_html.beam的目录位于您的代码路径中。

将其添加到您的代码路径中,使用命令lind args(-pa,-pz):

# erl -pa /home/blah/src/mochiweb/ebin
1> code:where_is_file("mochiweb_html.beam").
"/home/blah/src/mochiweb/ebin/mochiweb_html.beam"

或使用代码模块(代码:add_patha,代码:add_pathz):

# erl
1> code:where_is_file("mochiweb_html.beam").
non_existing
2> code:add_patha("/home/blah/src/mochiweb/ebin/").
true
3> code:where_is_file("mochiweb_html.beam").
"/home/blah/src/mochiweb/ebin/mochiweb_html.beam"