我有我想通过调用一个简单的Erlang命令erl -eval
(编译erlydtl模板,作为描述erlydtl页 )。
当我这样做,从交互外壳一切正常,并立即命令退出:
erl -pa ebin deps\erlydtl\ebin Eshell V5.9.3.1 (abort with ^G)
1> erlydtl:compile('templates/tictactoe.dtl',tictactoe_dtl,[{out_dir,'ebin'}]).
ok
但是,当我尝试通过做erl -eval
(我想运行此从.bat文件):
erl -pa ebin deps\erlydtl\ebin -noshell -eval erlydtl:compile('templates/tictactoe.dtl',tictactoe_dtl,[{out_dir,'ebin'}])
然后命令,它的工作(模板编译),但它不退出,我需要用CTRL + C(我在Windows下工作)手动终止shell进程。
我只想命令编译模板并退出。 可能是什么问题?
更新:
一种解决方案可以在命令结束时附加出口()调用,但然后我结束了以下内容:
erl -pa ebin deps\erlydtl\ebin -noshell -eval erlydtl:compile('templates/tictactoe.dtl',tictactoe_dtl,[{out_dir,'ebin'}]),exit(success).
{"init terminating in do_boot",success}
Crash dump was written to: erl_crash.dump
init terminating in do_boot (success)
该错误消息是很让人讨厌,所以我还是不喜欢这种解决方案。