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.

Reply via email to