我开始学习Erlang,在读完第一章后,在编译模块时出现了奇怪的错误.
所以当我尝试编译demo.erl时
-module(demo). -author("alex"). -export([double/1]). double(Value) -> Value * 2.
所以我尝试编译它
1> m(demo).
得到了
** exception error: undefined function demo:module_info/0
编译的唯一方法是
make:files(filelib:wildcard("demo.erl")).
我得到了demo.beam,现在甚至在删除了m(demo)之后.开始工作.
任何人都可以向我解释编译器的行为吗?
要从Erlang shell编译模块,请使用以下c
命令:
1> c(demo). {ok,demo}
shell m
命令用于检索有关已编译模块的信息:
2> m(demo). Module: demo MD5: 422cee9099e136c6dec13dd200927c63 Compiled: December 12 2015, 22:51 Object file: /tmp/demo.beam Compiler options: [] Exports: double/1 module_info/0 module_info/1 ok