7-依赖和伞工程

    本章我们简短地讨论在Mix中如何管理依赖。

    我们的应用程序完成了,现在是时候实现我们第一章提到的那个处理请求的服务器了:

    我们不会再往kv应用程序中添加代码,而是来创建一个TCP服务器作为kv的客户端。
    因为整个Elixir生态系统被设定为更加适应应用程序。因此我们最好是把工程分成小的应用程序,而不是大一统。

    外部的依赖不是你整的。比如,你要发布的KV程序,它需要HTTP的API,你可以用作为一个外部依赖。

    安装外部依赖很简单。通常我们使用Hex包管理器。你只要在中的deps函数中列出依赖:

    这个依赖引用的是plug在0.5.x系列版本中最新推送给Hex的一个。~>后面跟着版本数字。更多关于如何指定某特定版本的信息,请参考。

    你会注意到,当你给你的工程加了一个依赖后,Mix会生成了一个mix.lock文件,用该文件确保可重复的构建
    lock文件必须ckeckin到你的版本管理系统中去,来保证任何使用这个工程的人都拥有和你同样的依赖的版本。

    Mix提供了很多依赖相关的操作,可以用查看:

    最常用的操作是mix deps.getmix deps.update
    一旦获取了依赖程序,这些程序会自动被编译好供你使用。
    关于deps操作,可以通过或者Mix.Tasks.Deps模块文档阅读更多信息。

    7.2-内部依赖