一、rebar3配置
Rebar3是一個基於Erlang/OTP環境的構建工具。當使用Rebar創建OTP應用程序或erlang庫時,創建指令會自動填寫默認的相關構建元數據。配置文件(位於根目錄下的rebar.config)可以被用來指定如測試框架支持、插件、依賴項等與構建相關的元數據。它的示例如下:
{erl_opts, [debug_info]}.
{deps, [
{cowboy, {pkg, cowboy_git, "master"}}
]}.
{plugins, [
lager,
rebar3_hex
]}.
{provider_hooks, [
{post, [
{compile, {lager, compile}},
{clean, {lager, clean}}
]}
]}.
上面的配置文件展示了如何定義一些基本的配置項,比如:
1、代碼編譯時打開 Erlang 源碼調試信息;
2、依賴於 cowboy 庫;
3、使用的Rebar插件,正常情況下,Rebar會將項目根目錄下的rebar.config作為默認的配置文件。
二、rebar3本地源
在項目開發時,不同的電腦上都有各種各樣的網絡配置,對於自動化開發,我們經常需要下載各種依賴和源碼。但如果開發過程中網絡環境比較差,依賴的下載和編譯會非常耗時,甚至會失敗。此時我們需要使用本地源,這可以保證依賴的下載和編譯時一定會成功。使用本地源的好處如下:
1、本地源會保留所有已經下載的依賴,無需重複下載;
2、本地源會在磁盤上保留編譯後的文件,無需重新編譯。
下面是如何使用本地源進行編譯:
% 創建一個本地源
rebar3 local create
% 編譯依賴
rebar3 compile
這樣就可以在代碼中使用依賴了。同時,還可以看到所有已經編譯好的文件都會被保存在本地源中。
三、rebar3是什麼
Rebar3是一個基於Erlang/OTP環境的構建工具。它可以用來編寫 OTP 應用程序或 erlang 庫。另外,Rebar3的一個優勢是其強大的插件系統,允許開發者創建插件並在構建過程中使用它們。此外,Rebar3具有自動化、簡單且可定製化的構建過程、快速的依賴管理以及支持umbrella工程等特性,這些特性使得開發者更容易完成基於Erlang開發的任務。
四、rebar3是什麼軟件
從本質上講,Rebar3是一個開發者用於構建OTP應用程序或Erlang庫的構建工具。作為一個基於Erlang編寫的項目構建工具,Rebar3旨在幫助開發者快速開發OTP應用程序或Erlang庫。
嚴格來講,Rebar3被視為一個Erlang包,因此開發者需要安裝Erlang才能使用它。一旦開始安裝Rebar3,開發者就可以使用它來創建一個新的OTP應用程序或Erlang庫。
五、rebar3 mnesia 修改目錄
Rebar3提供一個額外的選項, 即 mnesia 的修改目錄,該目錄可以包含一些與構建無關的信息,比如 Mnesia 的變更歷史和日誌。通常,Mnesia 修改目錄會包含 Mnesia 的配置文件,以及一些 transfile 文件。例如,我們可以將 Mnesia 修改目錄指向“/mnesia”:
% 執行如下命令來設置 mnesia_dir
%% rebar.config
{mnesia_dir, "/mnesia"}.
當Mnesia開始記錄修改歷史和日誌時,相關的文件也將存放在指定的目錄中。
六、rebar3 umbrella plugin
Rebar3的一個很棒的特性是支持umbrella工程。Umbrella 工程允許組織代碼庫中不同部分之間的依賴,這些依賴通常是不同但相互合作的 Erlang 應用程序/庫。
在創建Umbrella工程時,我們可以選擇在每個具體的應用程序中添加不同的插件。這些插件可以在不同應用程序之間進行共享,比如lager和rebar3_undo插件:
{plugins, [
{lager, "3.9.0"},
{rebar3_undo, "0.2.13"}
]}.
Rebar3支持很多其他的插件和動態打包機制,比如 cowboy、mochiweb、inets 和 xmerl。簡而言之,Rebar3插件可以幫助開發者進行更加快速的開發和測試,同時可以增強應用程序的功能和可用性。
原創文章,作者:BXZIW,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/361694.html