You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by be...@incubator.apache.org on 2004/12/16 20:54:10 UTC

[Apache Beehive Wiki] Updated: Distribution Structure

   Date: 2004-12-16T11:54:10
   Editor: SteveHanson <st...@bea.com>
   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).