Date: 2004-10-25T11:02:25
Editor: KenTam <[EMAIL PROTECTED]>
Wiki: Apache Beehive Wiki
Page: Distribution Structure
URL: http://wiki.apache.org/beehive/Distribution Structure
no comment
Change Log:
------------------------------------------------------------------------------
@@ -8,10 +8,15 @@
== Distribution Build ==
The following top-level ant targets are relevant to building a distribution:
- * '''build.dist''': creates an exploded distribution rooted in
{{{$BEEHIVE_HOME/build/dist}}}. Depends on Beehive platform code, docs and
samples builds. Distinct from '''deploy''' so the development cycle of
'''clean deploy''' won't be impacted.
+ * '''build.dist''': creates an exploded distribution rooted in
{{{$BEEHIVE_HOME/build/dist}}}. Depends on Beehive platform code and samples
builds. Distinct from '''deploy''' so the development cycle of '''clean
deploy''' won't be impacted.
+ * '''build.dist.docs''': creates an exploded documentation distribution
rooted in {{{$BEEHIVE_HOME/build/dist-docs}}}. Depends on Beehive docs build.
* '''build.dist.jar''': creates a distribution archive in
{{{$BEEHIVE_HOME/build/jars}}} from the exploded distribution in
{{{$BEEHIVE_HOME/build/dist}}}.
+ * '''build.dist.docs.jar''': creates a documentation distribution archive in
{{{$BEEHIVE_HOME/build/jars}}} from the exploded distribution in
{{{$BEEHIVE_HOME/build/dist-docs}}}
+ * '''test.dist''': runs simple validation tests on the distribution in
{{{$BEEHIVE_HOME/build/dist}}}. These tests are written and executed from the
perspective of a user of the distribution (ie, they spawn a clean shell w/ no
Beehive developer related settings).
* '''clean''': deletes the build/ directory, including distributions
(exploded and archived).
+JAR building targets incorporate the value of the {{{beehive.version}}}
property into the name of the created JARs. Set this when calling ant in order
to produce a distribution w/ the appropriate version #.
+
== Distribution Directory Structure ==
The following structure is built under build/dist:
@@ -45,6 +50,7 @@
netui-blank.war
wsm-blank.war
controls-blank.jar
+ beehive.properties
README.txt
LICENSE.txt
INSTALL.txt
@@ -53,7 +59,7 @@
=== Descriptions of the sub-directories ===
- * the ant/ directory contains the build files for compiling various Beehive
enabled projects. For example, a skeleton webapp build file would be included
that has targets to build / clean a Beehive-enabled web project. There would
also be Ant targets to help (un|re)deploying a webapp on Tomcat and a target to
obtain a copy of the NetUI runtime. In general, the build files would contain
the core tasks needed to build / clean each project type and would be
structured such that they could be called directly or included in
project-specific build files using the Ant 1.6 <import> tag.
+ * the ant/ directory contains the build files for compiling various Beehive
enabled projects. For example, a skeleton webapp build file would be included
that has targets to build / clean a Beehive-enabled web project. There would
also be Ant targets to help (un|re)deploying a webapp on Tomcat and a target to
obtain a copy of the NetUI runtime. In general, the build files would contain
the core tasks needed to build / clean each project type and would be
structured such that they could be called directly or included in
project-specific build files using the Ant 1.6 <import> tag. Global properties
for these build files are defined in the top-level beehive.properties file.
* the lib/ directory contains the runtime bits divided by sub-component. This
breakdown helps developers understand which runtime pieces are used by each of
WSM, Controls, and NetUI.
* the lib/common/ directory contains the runtime bits that are shared between
two or more sub-projects. Currently, this includes XMLBeans and Log4J.
* the lib/controls/ directory contains the controls.jar and related Velocity
JARs; the latter are used at build time
@@ -61,4 +67,5 @@
* the lib/wsm/ directory contains wsm.jar and any related runtime JARs
* the templates/ directory contains project templates for the various Beehive
components including a WSM enabled webapp, a controls JAR project, and a NetUI
/ Controls / XMLBeans enabled webapp. These can be unzipped and used as a
starting point for building Beehive projects and should ship compiled such that
they can be dropped into a container and run when possible.
* the docs/ directory will contain Beehive documentation and API Javadoc
- * the samples/ directory will contain the samples that we decide should be
distributed with the runtime
+ * the samples/ directory will contain the samples that we decide should be
distributed with the runtime (ie, the petstore).
+