当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


erlang lib_dir(Name)用法及代码示例


lib_dir(Name) -> file:filename() | {error, bad_name}
类型:
Name = atom()

返回 "library directory" 的路径,即位于 $OTPROOT/lib 下或环境变量 ERL_LIBS 引用的目录上的应用程序 Name 的顶级目录。

如果代码路径中存在名为NameName-Vsn 的常规目录以及ebin 子目录,则返回该目录的路径(而不是ebin 目录)。

如果目录引用存档中的目录,则在返回路径之前会删除存档名称。例如,如果路径中存在目录/usr/local/otp/lib/mnesia-4.2.2.ez/mnesia-4.2.2/ebin,则返回/usr/local/otp/lib/mnesia-4.2.2/ebin。这意味着应用程序的库目录是相同的,无论应用程序是否驻留在存档中。

例子:

> code:lib_dir(mnesia).
"/usr/local/otp/lib/mnesia-4.2.2"

如果 Name 不是 $OTPROOT/lib 下或通过环境变量 ERL_LIBS 引用的目录上的应用程序名称,则返回 {error, bad_name} 。如果 Name 的类型错误,则会失败并出现异常。

警告

为了向后兼容,Name 也允许是字符串。这可能会在未来的版本中发生变化。

相关用法


注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 lib_dir(Name) -> file:filename() | {error, bad_name}。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。