Date: 2004-12-16T11:54:10
   Editor: SteveHanson <[EMAIL PROTECTED]>
   Wiki: Apache Beehive Wiki
   Page: Distribution Structure
   URL: http://wiki.apache.org/beehive/Distribution Structure

   no comment

Change Log:

------------------------------------------------------------------------------
@@ -7,18 +7,21 @@
 
 == Distribution Build Details ==
 
+You must have Apache Forrest installed to run distribution-related targets.  
See $BEEHIVE_HOME/BUILDING.txt for instructions on installing Apache Forrest.
+
 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 and samples 
builds.  Distinct from '''deploy''' so the development cycle of '''clean 
deploy''' won't be impacted.
  * '''build.dist.zip''': creates a .zip distribution archive in 
{{{$BEEHIVE_HOME/build/jars}}} from the exploded distribution in 
{{{$BEEHIVE_HOME/build/dist}}}.
  * '''build.dist.tgz''': creates a .tar.gz distribution archive in 
{{{$BEEHIVE_HOME/build/jars}}} from the exploded distribution in 
{{{$BEEHIVE_HOME/build/dist}}}.
  * '''build.dist.archives''': creates all distribution archives (.zip, 
.tar.gz, etc).
- * '''build.dist.docs''': creates an exploded documentation distribution 
rooted in {{{$BEEHIVE_HOME/build/dist-docs}}}.  Depends on Beehive docs build.
- * '''build.dist.docs.jar''': creates a documentation distribution archive in 
{{{$BEEHIVE_HOME/build/jars}}} from the exploded distribution in 
{{{$BEEHIVE_HOME/build/dist-docs}}}
+ * '''build.dist.docs''': creates an exploded documentation distribution 
rooted in {{{$BEEHIVE_HOME/build/dist/apache-beehive-[version]/docs}}}.  
Depends on Beehive docs build.
+ * '''build.dist.docs.jar''': creates a documentation distribution archive in 
{{{$BEEHIVE_HOME/build/jars}}} from the exploded distribution in 
{{{$BEEHIVE_HOME/build/dist/apache-beehive-[version]/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 Structure ==
 
 A Beehive distribution has the following structure:
@@ -27,6 +30,8 @@
    ant/
       buildWebapp.xml
       ...
+   docs/
+      ...
    lib/
       common/
           apache-xbean.jar
@@ -64,14 +69,14 @@
 === Distribution Content Description  ===
 
  * beehiveUser.cmd sets up the user's Beehive environment.  Users need to 
modify it as part of setting up their Beehive installation to point at e.g. 
where they installed tomcat, ant and the jdk.
- * 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 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
  * the lib/netui/ directory contains the NetUI JPF runtime, compiler, tag 
libraries, skeleton config files, and the Struts / Commons JARs
  * 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.
- * the samples/ directory will contain the samples that we decide should be 
distributed with the runtime, both overall samples (like the petstore) and 
component specific sammples (like the WSM Address Book and the Database 
control).
+ * the samples/ directory will contain the samples that we decide should be 
distributed with the runtime, both overall samples (like the petstore) and 
component specific samples (like the WSM Address Book and the Database control).
 
 === What's NOT in a Distribution? ===
 
@@ -82,4 +87,24 @@
 
 == Distribution Documentation Directory Structure ==
 
-'''''TBD'''''
+The documentation is organized as an HTML web site.  
+{{{
+   docs/
+      apidocs/
+         classref_controls/
+         classref_pageflows/
+         classref_wsm/
+         taglib/
+      controls/
+      images/
+      pageflow/
+      wsm/
+      index.html
+      index.pdf
+      ...
+}}}
+
+ * The {{{apidocs}}} directory contains Javadoc API references for each 
sub-project. 
+ * The {{{controls}}}, {{{pageflows}}}, and {{{wsm}}} directories contain user 
guides for each sub-project.  
+ * {{{index.html}}} is the home page for the documentation web site.
+ * Each HTML file has a corresponding PDF file (e.g., index.html/index.pdf).

Reply via email to