Why doesn't Erlang come with a decent package

2019-06-21 14:05发布

Ok, this sounds like a bit of a rant, but I was wondering if there was a technical reason that Erlang doesn't have a proper package management system by default.

标签: erlang
2条回答
我只想做你的唯一
2楼-- · 2019-06-21 15:04

No major technical reason really. Just different needs as the classic way of setting up and installing erlang software is though applications. And some use releases added to that.

Often you see erlang software distributed completely self reliant. That is that it contains all the libraries and the virtual machine together in a package and not needing any sorts of external dependencies. You even see this in development versions of packages. The source tree of the Riak database for example has all dependent libraries in it.

This is not a bad idea like many coming from Ruby(like me) may think. This way each application is self reliant. As one of Erlang's main goals is to be the most reliable thing available it makes every sense in the world that each application can have it's own version of the library. Thus making sure one app does not make the other unstable.

查看更多
乱世女痞
3楼-- · 2019-06-21 15:05

Try rebar; it's a build system for erlang that includes a dependency management system. It doesn't have a central repository like gem does with rubygems.org, so you have to specify git urls. But, it does save you the trouble of having to download nested deps; it takes care of that itself.

And it sticks with Erlang's philosophy by keeping the downloaded deps inside your project directory rather then in a central system location; this is similar to bundler's deploy mode.

查看更多
登录 后发表回答