【问题标题】:What is the difference between .app and .app.src files in Erlang?Erlang 中的 .app 和 .app.src 文件有什么区别?
【发布时间】:2015-06-19 06:10:19
【问题描述】:

我在 Erlang 文档和 learnyousomeerlang.com 中找到了这些描述,但不确定哪一个是“应用程序资源文件”。什么时候应该使用 .app 和 .app.src?

7.3 应用程序资源文件 http://www.erlang.org/doc/design_principles/applications.html

应用程序资源文件 http://learnyousomeerlang.com/building-otp-applications

【问题讨论】:

  • src/_.app.src 用于构建钢筋等工具来生成ebin/_.app 文件。我相信生成过程中最有用的部分是填充 modules 列表,其中包含此应用程序引入的所有模块的列表,因此在开发过程中非常有用。

标签: erlang


【解决方案1】:

.app 文件(在ebin/ 中)是 Erlang VM 加载 OTP 应用程序所必需的文件。它必须包含应用程序的依赖项、它包含的模块、版本等字段。

特别是,应用程序的模块列表维护起来很繁琐,但还有其他东西可以动态添加。人们编写 .app.src 文件(在 src/ 中)并填充静态内容,以便他们选择的构建工具(rebar、rebar3、erlang.mk 等)可以用他们想要的内容填充动态部分,例如作为在磁盘上找到的模块。

这样可以简化开发流程,减少手动处理和维护的工作量。

【讨论】:

    【解决方案2】:

    我的理解是OTP应用应该在ebin目录下有application.app文件和编译好的beam文件。

    src 目录中保留一个 application.app.src 文件(与 ebin 目录中的文件相同)是可选,但对于让构建过程生成 application.app 文件很有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-12
      • 2010-12-23
      • 1970-01-01
      • 2016-11-14
      • 1970-01-01
      • 2016-08-30
      • 1970-01-01
      相关资源
      最近更新 更多