THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
Design (with respect to Maven use) for Apache UIMA
This describes the redesign concerning how we use Maven, done at the time UIMA was moved to a top level project.
Basics
- New SVN top level node: "build" - holding things not part of distributions, but used during building
- Keeping (for now) the following SVN structures:
- uima
- build, uimaj, uimacpp, uima-as, sandbox, site
- under each of these, trunk, branches, tags (except site - only has trunk)
- uima
- parent poms separated from aggregate poms
- aggregate poms used to collect multi-module things together for release
- release numbering of components: supporting either individually incrementing release numbers per module (for instance, as could be done (but isn't currently) in the sandbox), or keeping-all-modules at same release number - like we do for all parts of uimaj framework (even if some parts have no changes from release to release)
- Which to do, and for which components - still needs discussion.
- Maven release plugin provide some support - for instance, the release plugin goal "update-versions" supports setting the version number for all child modules in a multi-module builds
- Parent poms to have the maven convention of version numbers like 1, 2, ...
- They are released separately, and change (hopefully) rarely
- RAT
- run via a profile, on each artifact
- no more doing the assembly and then unzipping it
- activation of the profile for rat may be
- on by default (will try this and see if it's too intrusive)
- on for apache-release profile (to be sure release build is OK)
- on when user wants to run it (use the -Prat to select)
- run via a profile, on each artifact
more coming...