次のようなプロジェクト構造があります。
ROOT/
apps/
common_lib_1/
src/*.erl
include/*.hrl
common_lib_2/
src/*.erl
include/*.hrl
common_lib_3/
src/*.erl
include/*.hrl
login_server/
src/*.erl
game_server
src/*.erl
rel/
と 、とに依存、game_server
とlogin_server
にgame_server
依存を配布したい。common_lib_1
common_lib_2
login_server
common_lib_1
common_lib_3
と で実行rebar create-node nodeid=xxx
するrel/game_server
とrel/login_server
、 を使用して配布を作成するrebar generate
と、多数の重複ファイルが生成されます。
次のようなきれいな構造でそれらを配布したい:
my_game/
bin/
game_server_region_1 # startup script of game server with region 1
game_server_region_2 # startup script of game server with region 2
login_server # startup script of login server
... # other common files
erts-5.10.3/
bin/
lib/
stdlib-1.19.3/
sasl-2.3.3/
common_lib_1-1.0.0/
common_lib_2-1.0.0/
common_lib_3-1.0.0/
game_server-1.0.0/
login_server-1.0.0/
... # other shared libraries
releases/
1.0.0/
game_server.boot
game_server.rel
game_server.script
login_server.boot
login_server.rel
login_server.script
game_server_region_1_vm.args
game_server_region_1_sys.config
game_server_region_1_vm.args
game_server_region_1_sys.config
login_server_vm.args
login_server_sys.config
RELEASES
start_erl.data
すべてのアプリケーションがライブラリを共有することを期待しています。それらには独自の起動スクリプト、vm および sys 構成があります。
これを行うには、クリーンな reltool.config を作成する方法を教えてください。