Regularize Sandbox builds and assembly
--------------------------------------
Key: UIMA-1583
URL: https://issues.apache.org/jira/browse/UIMA-1583
Project: UIMA
Issue Type: Improvement
Components: Build, Packaging and Test, Sandbox
Affects Versions: 2.2.2
Reporter: Marshall Schor
Assignee: Marshall Schor
Fix For: 2.3S
Converge the many, often slightly different sandbox builds into a more
maintainable structure, achieving the following:
# common pear packaging for those projects making a pear, including
standardized setting of the pear-id, and the copying of any "lib" files found
via dependency plugin to the pear lib dir..
# common preparation of the "bin" and "src" assembly parts, to make the
assembly step easier and consistent. The assembly step will be very minimal,
because each project will have pre-built in target/bin/<artifactId> and
target/src/<artifactId> the set of files that should go into the "bin" and
"src" distributions. This approach allows using the maven inheritance
mechansim to factor out common operations, so they are more maintainable
(versus using a very large and complex "assembly" descriptor).
# common obtaining of 3rd party Jars to be distributed with sandbox projects,
and putting of these into both the "bin" distribution (assembly) and the pear
(if one is generated). Also, any other contents of a top level lib/ will be
copied to both of these places in the lib/ directory.
# common setting of scopes for dependencies for included uima components - some
set to "provided", others to "test". The correct scopes are needed to make the
dependency pluging reliably pick the right Jars to put into the lib.
# common build of documentation (if available) from docbook sources, and
placing that in both the "bin" assembly, and also in a project/"docs" directory
- where the intent is that it will be checked in to SVN, and the website can
link to this as "online" documentation for the sandbox projects.
# common copying of generated docs into pear
# now that dependencies are being used to get the 3rd party jars, review these
to insure all the right jars are being obtained, and adjust the dependencies as
needed.
# for those project using a top level folder "desc" to hold descriptors,
include these descriptors in the generated main Jar, where they can be then
referenced by "name". Example: the Whitespace Annotator did this, and the
Tagger used this to conveniently run the Whitespace Annotator without
using/installing a PEAR.
# common copying of required LICENSE/NOTICE/DISCLAIMER, plus README files to
the src/bin assemblies, and to the PEAR if one is generated.
# common copying of top level desc and resources directories to the bin, src,
(automatically done for PEAR by pear-packaging-plugin)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.