Building AndroMDA

Building AndroMDA from the source is quite easy, just follow these steps:

  1. Make sure you have Maven installed correctly and MAVEN_HOME/bin is in your PATH (so that Windows finds "maven.bat" and *nix finds "maven").
  2. Unpack andromda-src-*.zipinto a directory of your choice.
  3. "MAVEN_OPTS=-XX:MaxPermSize=128m -Xmx512m" must be set in your environment variables.
  4. Change to the directory where you unpacked the contents, and then type: maven

That's it! The contents will be installed into both your local maven repository (for maven users) and the target/distributions (for those still using Ant).

The same rules apply if you want to build from CVS version. Just checkout the andromda-allmodule from AndroMDA CVS , and proceed as before.

Maven goals

Different goals can be called in order to build the sources, it is even possible to call goals in the different sub-projects, that's because we are using the Maven Multi-Project plugin .

  • Using the -o command line parameter will tell Maven not to download any dependencies, this will speed up the build process.
  • It's possible to disable the tests by using -Dmaven.test.skip=true.

Global goals

These goals can be executed in the root of the AndroMDA source tree.

  • maven

    Calls the default goal: clean-dist (see below).
  • maven clean-dist

    Cleans everything and then builds the binary distribution.
  • maven docs

    Builds the documentation and includes it in the binary distribution.
  • maven dist

    Builds the binary distribution.

Expert Goals

Execute these goals in the root of the AndroMDA source tree.

  • maven install-components

    Builds and installs all AndroMDA components into the local Maven repository.
  • maven install-samples

    Builds and installs all AndroMDA samples into the local Maven repository.
  • maven install

    Builds and installs all AndroMDA components and samples into the local Maven repository.
  • maven deploy

    Deploys all libraries into the remote Maven repository.
  • maven xfr-dist

    Transfers distribution to team server (same as maven deploy).
  • maven deploy-no-tests

    Deploys all libraries into the remote repository while skipping all tests (speeds up deployment).
  • maven clean

    Cleans everything: deletes /target directories, *.log* files and files with the .exc extension.
  • maven dist-bin

    Builds the binary distribution.
  • maven dist-src

    Builds the source distribution.
  • maven bootstrap-install

    Installs all bootstrap artifacts to the local repository.
  • maven deploy-distribution

    Copies the distribution to the server.
  • maven deploy-docs

    Copies the documentation to the server.
  • maven deploy-repository

    Copies the repository artifacts to the server.
  • maven deploy-build

    Copies all artifacts to the server.
  • maven update-xmi -DxmiToken=oldVersion -DxmiValue=newVersion

    Processes all XMI models by search and replacing for all occurrences of oldVersion and replacing it with newVersion. This goal is to be used when releasing a new version.

Plugin goals

Execute the goals where the AndroMDA plugins are located, ie. /maven/andromda, /maven/andromdapp, /maven/cartridge ...

  • maven plugin:install

    Builds and installs the current plugin, you will need to do this in order to make it available to Maven.

Cartridge goals

The following goals can be called in each cartridge subdirectory.

  • maven jar:install

    Build and install the current cartridge.

Metafacade goals

Execute these goals to build the generic metafacades, you will need to execute them in /metafacades/uml.

  • maven install

    Builds and installs the generic metafacades.

Documentation goals

The following goals can be called in each cartridge subdirectory, or in /documentation.

  • maven xdoc

    Generates the HTML pages from the XDOC files for the current component only.