在线文档教程

erl_prim_loader

erl_prim_loader

模块

erl_prim_loader

模块摘要

低级别的Erlang加载器。

描述

该模块用于将所有Erlang模块加载到系统中。启动脚本也是通过这个低级加载器获取的。

erl_prim_loader 了解环境以及如何获取模块。

命令行标志-loader Loader可以用来选择使用的方法erl_prim_loaderLoaderErlang运行时系统支持两种方法:efileinet

出口

get_file(文件名) - > {ok,Bin,FullName} | 错误

类型

使用低级加载器获取文件。Filename是一个绝对文件名或只是文件的名称,例如"lists.beam"。如果内部路径设置为加载器,则使用此路径查找文件。FullName是获取文件的完整名称。Bin是二进制文件的内容。

Filename例如,也可以是档案中的文件$OTPROOT/lib/mnesia-4.4.7.ez/mnesia-4.4.7/ebin/mnesia.beam。有关存档文件的信息,请参阅code(3)

get_path() - > {ok,Path}

类型

获取加载器中设置的路径。该init(3)进程根据启动脚本中的信息设置路径。

list_dir(Dir) - > {ok,Filenames} | 错误

类型

列出目录中的所有文件。{ok, Filenames}如果成功则返回,否则errorFilenames是目录中所有文件的名称列表。名称没有排序。

Dir例如,也可以是档案中的目录$OTPROOT/lib/mnesia-4.4.7.ez/mnesia-4.4.7/ebin。有关存档文件的信息,请参阅code(3)

read_file_info(文件名) - > {ok,FileInfo} | 错误

类型

检索有关文件的信息。{ok, FileInfo}如果成功则返回,否则errorFileInfo是一个记录file_info,在内核包含文件中定义file.hrl。在调用该函数的模块中包含以下指令:

-include_lib("kernel/include/file.hrl").

有关记录的更多信息file_info,请参阅file(3)

Filename例如,也可以是档案中的文件$OTPROOT/lib/mnesia-4.4.7.ez/mnesia-4.4.7/ebin/mnesia。有关存档文件的信息,请参阅code(3)

read_link_info(文件名) - > {ok,FileInfo} | 错误

类型

read_file_info/1除了如果Filename是符号链接一样工作,关于链接的信息被返回到file_info记录中并且记录的type字段被设置为symlink

如果Filename不是符号链接,则此函数返回的结果与read_file_info/1。的结果完全相同。在不支持符号链接的平台上,此功能始终等同于read_file_info/1

set_path(Path) -> ok

类型

如果在启动脚本中init(3)解释path命令,则设置加载器的路径。

命令行旗

erl_prim_loader模块解释以下命令行标志:

-loader Loader

指定使用的加载器的名称erl_prim_loaderLoader可以efile(使用本地文件系统)或inet(使用boot_server另一个Erlang节点上的加载)。

如果-loader省略标志,则默认为efile

-loader_debug

使efile加载器在处理文件时写入一些调试信息,例如失败的原因。

-hosts Hosts

指定inet加载器可以使用的其他Erlang节点。如果标志-loader inet存在,该标志是强制性的。在每个主机上,必须在Erlang节点上erl_boot_server(3),该节点负责处理加载请求。Hosts是一个IP地址列表(主机名不可接受)。

-setcookie Cookie

指定Erlang运行时系统的cookie。如果标志-loader inet存在,该标志是强制性的。

另见

init(3),,,erl_boot_server(3)