rebar3是erlang的包管理工具,虽然不是官方出品,但它已经成为事实上的官方包管理工具了,github地址如下:
已经不难看出它的地位了。
rebar官网地址是http://rebar3.org/,上面有安装和使用文档,推荐看一看。
rebar3的安装并不像通常的windows程序那样简单直接,所以本文会对rebar的安装做一个介绍。能看到这里我就默认大家都有erlang环境了,所以我们直接进入rebar3的安装。
安装
有两个地方可以下载rebar3编译好的二进制文件:
- 官网
- github的release页
这两个地址上面都有。但是要注意下载下来的并不是.exe
文件,也就是说不是Windows可执行文件。这并不是你下载错了,或者rebar不支持window。要使用rebar3还需要另一个叫做rebar3.cmd
的文件,而这个文件是从源码编译出来的。
这一点确实比较神奇,我也是经过摸索才弄明白。所以还不如直接从源码安装,省事儿,而且从源码安装也不难。
官网给出的从源码编译rebar3就三个步骤:
$ git clone https://github.com/erlang/rebar3.git
$ cd rebar3
$ ./bootstrap
执行成功后,会在源码目录下得到下面两个文件:
rebar3
rebar3.cmd
我们需要的就是这两个文件,你可以将源码目录加到path
,或者把它俩拷贝到另一个空目录,然后将那个目录加到path
,加到path
环境变量只是为了方便使用。
可能会遇到的问题
找不到escript
如果你安装了erlang,但是没有把它的bin
目录添加到path
环境变量,那么编译rebar3的时候就会提示找不到escript
,因为rebar3编译的时候需要用到escript
来执行erlang代码,不知道escript
的可以看这篇文章的”运行代码“一节。
禁止在系统上执行脚本
如果你是用的win11系统的powershell编译rebar3的话,那么可能会遇到这个问题。
打开提示中的网址其实就明白了。win11中PowerShell 的默认执行策略变成了更严格的Restricted
,它会阻止脚本执行。我们编译时输入的./bootstrap
其实是当前目录下的bootstrap.psl
,这是一个脚本文件。
查看你的powershell的执行策略可以使用Get-ExecutionPolicy
命令。
这个问题也很好解决,直接换到cmd下去编译就ok了。
如果非要在powershell中编译,可以使用下面的命令先更改执行策略:
Set-ExecutionPolicy -ExecutionPolicy Bypass
我是不建议这样做的,除非你很熟悉Windows的这些安全策略,而且编译完之后最好改回原来的执行策略。