【发布时间】:2010-12-22 23:36:04
【问题描述】:
如何在不通过命令行传递“dir”参数的情况下为mnesia 指定工作目录?
换句话说,我可以在调用 `mnesia:start()' 之前为 mnesia 指定一个“工作目录”吗?
【问题讨论】:
如何在不通过命令行传递“dir”参数的情况下为mnesia 指定工作目录?
换句话说,我可以在调用 `mnesia:start()' 之前为 mnesia 指定一个“工作目录”吗?
【问题讨论】:
application:set_env(mnesia, dir, Dir).
【讨论】:
application_controller:set_env 是这个过程的“API”。 application:set_env 是一个更抽象的调用,它只处理应用程序。难怪目前它只调用该 API。
除了此处其他响应中提到的方法调用之外,您还可以在系统配置文件或使用 -config 参数指定的 .app 文件中指定此方法。请参阅http://erlang.org/doc/design_principles/applications.html#id2270704 了解更多信息。这允许您将配置与代码分开并避免大量命令行标志。
【讨论】: