repositories Ġ{ ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ sub projects Ġ{ ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Central () ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġclean Ġby Ġtasks . register (" clean ") Ġ{ ĊĠĠĠ Ġdelete ( build Dir ) ĊĊĠĠĠ Ġdepends On ( ĊĠĠĠĠĠĠĠ Ġtasks . getBy Path (" backend : clean ") ĊĠĠĠ Ġ) Ċ } ĊĊ Ċ val Ġcopy Backend Into Local Build Ġby Ġtasks . register < Copy >(" copy Backend Into Local Build ") Ġ{ ĊĠĠĠ Ġdelete ("$ build Dir / backend ") ĊĠĠĠ Ġfrom ("$ project Dir / backend / build / install / backend ") ĊĠĠĠ Ġinto ("$ build Dir / backend ") Ċ } Ċ Ċ val Ġcopy Frontend ToLocal Build Dir Ġby Ġtasks . register < Copy >(" copy Frontend ToLocal Build Dir ") Ġ{ ĊĠĠĠ Ġdelete ("$ build Dir / frontend ") ĊĠĠĠ Ġfrom ("$ project Dir / frontend / dist ") ĊĠĠĠ Ġinto ("$ build Dir / frontend ") ĊĠĠĠ Ġduplicates Strategy Ġ= ĠD uplicates Strategy . INCLUDE Ċ } Ċ Ċ val Ġinstall Dist Ġby Ġtasks . register (" install Dist ") Ġ{ ĊĠĠĠ Ġval Ġtasks To Run Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġclean , ĊĠĠĠĠĠĠĠ Ġtasks . getBy Path (" frontend : install Dist "), ĊĠĠĠĠĠĠĠ Ġcopy Frontend ToLocal Build Dir , ĊĠĠĠĠĠĠĠ Ġtasks . getBy Path (" backend : install Dist "), ĊĠĠĠĠĠĠĠ Ġcopy Backend Into Local Build ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġtasks To Run . last Index ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtasks To Run [ i Ġ+ Ġ 1 ]. must Run After ( tasks To Run [ i ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġdepends On ( tasks To Run ) Ċ }