Rebar3使用介紹(一)基礎用法

2021-08-31 01:24:26 字數 1824 閱讀 3632

本文基本都是按照

$ git clone 

$ cd rebar3

$ ./bootstrap

$ wget  &&

chmod +x rebar3

如果要在windows下使用的話,需要額外製作乙個rebar3.bat rebar3.cmd用來呼叫

@echo off

setlocal

set rebarscript=%~f0

escript.exe "%rebarscript:.cmd=%" %*

當然要求erlang環境,escript必須在path中,如果用過rebar,和以前的rebar.bat rebar.cmd作用是一樣的,不過現在idea的erlang外掛程式已經支援了,如果使用idea就不用通過指令碼呼叫

加入到環境變數中

./rebar3 local install
後續更新,可以通過命令直接更新到最新穩定版本

rebar3 local upgrade
加入deps依賴

編譯輸出配置

測試發布

rebar3提供了命令用來新建任意型別的模板,可通過rebar3 new命令呼叫。該值可以是下面的任意值:

plugin: 用於支援rebar3指令碼

, % package

}} % alternatively, source

]}.

總的來說,一般比較常用的庫hex都會有歸檔,不需要提供git倉庫位址,但是如果不配置就沒法完成的話,就得按照第二種格式配置上vsn位址了。當然也可以通過更新hex的歸檔目錄實現,不過吧,我只是猜可以,沒實踐過。。

rebar的老配置格式,例如}}這種在rebar3也是相容的,但是第二個字段".*",會被忽略

和rebar一樣,在專案的根目錄下執行rebar compile就可以完成編譯,不過和rebar不同的是,使用rebar我們得先執行rebar get-deps先主動獲取依賴才行,rebar3不需要直接執行compile即可,而且可以保證deps目錄是最新的,即使deps庫有了變更。

預設的輸入目錄為_build目錄,和rebar不同

測試用例預設是存放在test/目錄下,eunit允許按照模組組織打包目錄存放

如果測試用例需要額外的依賴,可以做單獨配置,只有在執行測試用例的時候才getdeps指定依賴

}}

]}]}

]}.

現在第一次呼叫rebar3 ct會更新meck到_build/test/lib/.下,但是不會被加到rebar.lock檔案中

rebar3使用relx進行構建

可以使用rebar3 new release myrel直接新建乙個發布目標,該項目的rebar.config就會有乙個推薦的relx配置如下

,[

myrel]}

,,,]

}.,]

}]}]

}.

你可以將上面的內容複製到你的rebar.config中,當然記得將myrel該成你自己的專案,就可以呼叫rebar3 release進行發布

使用命令rebar3 as prod tar可以將發布的檔案打包成tar包方便拷貝

rebar3使用介紹(七)測試

rebar3內建了eunit和ct common test 測試執行器。通過遵循一些約定,您可以使用單個rebar3命令執行測試套件。執行eunit測試非常簡單 rebar3 eunit如果要eunit test 1使用自己的引數呼叫,可以使用rebar.config的eunit tests欄位。該...

MySQL學習筆記(一)MySQL的介紹和基本操作

mysql是乙個開源的關係型資料庫管理系統 啟動mysql服務的命令列 net start mysql 停止mysql服務的命令列 net stop mysql 所有的windows的服務都可以通過net start stop進行啟動和停止。mysql登陸 格式 mysql引數,如mysql uro...

Python3中urllib使用介紹

urllin2庫 在pytho2.x中使用import urllib 對應的,在python3.x中會使用import urllib.request,urllib.error,urllib.parse。在pytho2.x中使用import urlparse 對應的,在python3.x中會使用imp...