Maven
Anchor uses Apache Maven as a build tool. As a prior step, Maven should be installed locally, configured for the Anchor project.
Assembly
The anchor-assembly is a special module that doesn’t generate a .jar artifact, but rather assembles the output of other modules (artifacts) into an Anchor distribution.
It produces its output (after mvn deploy) in a sub-directory:
anchor-assembly/anchor/target/anchor-version/anchor-version/
where version is replaced by the current version identifier (e.g. 0.0.1-SNAPSHOT).
And as a further step, it copies this output into the path defined by anchor.home.deploy
in your $HOME/.m2/settings.xml
(see previously). This is a convenient place to store your primary anchor distribution on your file-system, and its bin/ directory can be added to the System path.
Complete build of Anchor
To completely build Anchor from scratch. Pre-conditions:
- You’ve learned Maven basics.
- You’ve configured the
$HOME/.m2/settings.xml
file. - You’ve cloned all necessary Anchor Java repositories from GitHub (see below).
Then execute the command mvn deploy
in the root of each repository directory IN THIS ORDER.
anchor-pom/
anchor/
anchor-plugins/
anchor-plugins-gpl/
anchor-assembly/
The order is important to match the dependency structure between repositories.
The final command will copy a distribution into anchor.home.deploy
with needed native libraries for the chosen operating system.