【语言版本控制】使用asdf(erlang/elixir,node等)

我认为有很多人使用asdf进行语言环境搭建和版本切换非常方便。关于CommonLisp的ASDF项目,我不清楚与我有何关系,可能有些东西存在,也可能没有。

优势

在中文中有一种选择可以解释如下:
能够将诸如rvm/rbenv或nvm等版本管理器统一为一个命令是非常重要的。关于这方面的开发动机已经写成了一篇诗。只要在本地安装,就会生成一个.tool-versions文件,将其放入Git中,就可以在项目中共享。

通过创建插件,可以使没有方便的版本管理器的语言也能够适应,这也是很好的。

asdf用左手输入也很方便,是个了不起的设计。

准备好

符合OSX操作系统的要求。基本上按照README中所述进行操作。

$ brew install automake autoconf openssl libyaml readline libxslt libtool unixodbc # 準備。大概入ってそうですが。

$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf
$ echo '. $HOME/.asdf/asdf.sh' >> ~/.bashrc # この2行は各自の環境合わせで。
$ echo '. $HOME/.asdf/completions/asdf.bash' >> ~/.bashrc

$ . ~/.bashrc

并发编程语言Erlang/Elixir

由于更新速度很快,我们希望能积极追随。这也在官方渠道进行了介绍。

$ asdf plugin-add erlang https://github.com/asdf-vm/asdf-erlang.git
$ asdf plugin-add elixir https://github.com/asdf-vm/asdf-elixir.git

$ asdf install erlang 18.3
(数分かかる)
$ asdf global erlang 18.3

$ asdf install elixir 1.2.5
(結構すぐ終わる)
$ asdf global elixir 1.2.5

在安装Erlang之前安装openssl是非常重要的,如果忘记安装openssl,则:ssl模块将不会被安装。Hex依赖于它,因此实际上是必需的。
如果通过brew安装,它会自动解析openssl的路径并帮助安装:ssl。
如果要手动指定,可以:

$ ERLANG_EXTRA_CONFIGURE_OPTIONS="--with-ssl=/usr/local/opt/openssl/" asdf install erlang 18.3

以此方式传递选项。

Node.js 是一个开源、跨平台的 JavaScript 运行环境。

节点和版本控制是紧密相关的。

$ asdf plugin-add nodejs https://github.com/asdf-vm/asdf-nodejs

接下来几乎都是相同的。需要注意的是,添加插件不是使用”node”,而是使用名为”nodejs”的名称,并且之后还需要安装nodejs的各个版本。对于OSX,命令名称将是”node”。

He/They (depending on the context)

我可以使用Ruby和Go。Lua也可以。
如果安装容易,我会对尝试新语言产生兴趣。你没有感到兴奋吗?

广告
将在 10 秒后关闭
bannerAds