代码之家  ›  专栏  ›  技术社区  ›  yazz.com

为什么erlang没有一个像样的包管理系统gem?[关闭]

  •  5
  • yazz.com  · 技术社区  · 15 年前

    好吧,这听起来有点夸张,但我想知道,erlang默认情况下没有一个合适的包管理系统是否有技术原因。

    2 回复  |  直到 11 年前
        1
  •  15
  •   Jon Gretar    15 年前

    没有主要的技术原因。作为安装和安装erlang软件的经典方法,应用程序的需求是不同的。还有一些使用添加到其中的版本。

    通常您会看到erlang软件是完全独立分布的。也就是说,它将所有库和虚拟机放在一个包中,不需要任何外部依赖项。您甚至可以在包的开发版本中看到这一点。例如,riak数据库的源树中包含所有依赖库。

    这并不像很多来自ruby的人(像我一样)所想的那样是个坏主意。这样每个应用程序都是自力更生的。由于erlang的主要目标之一是成为最可靠的可用对象,因此每个应用程序都可以拥有自己版本的库。从而确保一个应用程序不会使另一个不稳定。

        2
  •  8
  •   DSimon    13 年前

    尝试 rebar ;这是一个用于erlang的构建系统,其中包括依赖项管理系统。它没有像gem对rubygems.org那样的中央存储库,所以必须指定git url。但是,它确实省去了下载嵌套dep的麻烦;它本身就可以解决这个问题。

    它坚持erlang的理念,将下载的dep保存在项目目录中,而不是集中在一个系统位置;这与bundler的部署模式类似。