You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "Adam Jenkins (JIRA)" <de...@beehive.apache.org> on 2005/12/01 00:57:30 UTC

[jira] Updated: (BEEHIVE-1016) Maven goal for building the various beehive components.

     [ http://issues.apache.org/jira/browse/BEEHIVE-1016?page=all ]

Adam Jenkins updated BEEHIVE-1016:
----------------------------------

    Attachment: maven_plugin.zip

Maven plugin for building beehive:

install with
$> maven plugin:install

goals are:

beehive:generate-xmlbeans
[generates all xsd files from beehive.xmlbeans.schemas.dir to beehive.xmlbeans.classgen.dir]

beehive:prep-xmlbeans
[runs before beehive:generate-xmlbeans, creates beehive.xmlbeans.classgen.dir]

beehive:build-controls
[generates all controls from beehive.controls.src.dir to beehive.controls.dest.dir using gendir=beehive.controls.gen.dir
generates for extensions (*.java, *.jcx,*.jcs,*.jws)]

beehive:prep-controls
[runs before beehive:generate-controls, creates beehive.controls.dest.dir and beehive.controls.gen.dir]

beehive:build-pageflows
[builds pagesflows from beehive.pageflows.src.dir to beehive.pageflows.dest.dir using gendir=beehive.pageflows.gen.dir
generates for extensions (*.jpf, *.java,*.jpfs,*.app, *.jsfb)]

beehive:prep-pageflows
[runs before beehive:build-pageflows, creates beehive.pageflows.dest.dir and beehive.pageflows.gen.dir]

beehive:build-webservices
[builds web services from beehive.webservices.src.dir to beehive.webservces.dest.dir using gendir=beehive.webservices.gen.dir,
generates for extension (*.java, *.jcx, *.jcs, *.jws)]

beehive:prep-webservices
[runs before beehive:build-webservices, creates beehive.webservices.dest.dir and beehive.webservices.gen.dir]


Configurable Properties and their defaults:

As with all maven projects, properties can be overriden using the project.properties file in the project directory.  Properties available for overriding are:

#the directory to recursively look in for schemas to create xmlbeans from
beehive.xmlbeans.schemas.dir=src/resources/schemas
#where the xmlbeans are to generated to (target/classes is the default java compile directory for maven)
beehive.xmlbeans.classgen.dir=target/classes
#the directory to look for controls in
beehive.controls.src.dir=src/controls
#the directory to generate controls to
beehive.controls.dest.dir=target/classes
#the gen dir for the control generation process
beehive.controls.gen.dir=target/controls-gen
#The pageflows directory
beehive.pageflows.src.dir=src/pageflows
#where to generate the pageflow to
beehive.pageflows.dest.dir=target/classes
#the tmp gen directory for the pageflows
beehive.pageflows.gen.dir=target/.tmpbeansrc
#the content directory (jsps etc)...src/webapp is the default directory for maven 'war' goal commonly used to create web applications.
beehive.pageflows.content.dir=src/webapp
#the source directory for web services.
beehive.webservices.src.dir=src/ws
#the destination directory for webservices.
beehive.webservices.dest.dir=target/classes
#the tmp gen directory for webservices.
beehive.webservices.gen.dir=target/ws-gen


Usage:

goals can be used individually by setting up a maven project (or using the one attached to this issue) and calling, eg, maven beehive:build-pageflows

more commonly, the generation will be used with pre and/or post goals.  In a file called maven.xml in the project directory (see example project for more information) you can specify pre/post goals.  Commonly, generation of beehive artifacts will be a post goal of the java:compile goal.  java:compile is called during the process of building a web app using the 'war' goal.

So, in a maven.xml file, having:
    <postGoal name="java:compile">
        <attainGoal name="beehive:build-pageflows"/>
    </postGoal>
means that directly after the java souce is compile, call beehive:build-pageflows

similarly, you could have 
    <preGoal name="beehive:build-pageflows">
        <attainGoal name="beehive:build-controls"/>
    </preGoal>

if you wanted to ensure the controls were built before the pageflows.

See the example project for more information.

> Maven goal for building the various beehive components.
> -------------------------------------------------------
>
>          Key: BEEHIVE-1016
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-1016
>      Project: Beehive
>         Type: Wish
>   Components: Build
>  Environment: Maven
>     Reporter: Adam Jenkins
>     Priority: Trivial
>  Attachments: maven_plugin.zip
>
> Creating this issue to upload artifacts useful for building beehive projects using maven.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira