You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Leo Simons <le...@apache.org> on 2003/05/31 13:25:37 UTC

basic forrest plugin for maven

Hi gang,

I've written a very basic forrest plugin:

http://cvs.apache.org/~leosimons/maven-forrest-plugin.zip (12 megs!)

I've copied over a forrest snapshot build from feb 19 into the 
plugin-resources directory, tweaked the forrest.build.xml file (see the 
forrest.build.xml.patch.txt), added a plugin.properties, 
project.properties, then added a minimal plugin.jelly script which just 
calls the ant buildfile.

---

You can see it in use in the avalon-excalibur cvs:

1 - install maven beta 9 (or later, probably)
2 - unzip the plugin into your maven plugins/ dir
3 - checkout the avalon and avalon-excalibur cvses
4 - cd avalon-excalibur/compatibility
5 - maven xdoc

Current usage:

     <postGoal name="xdoc">
         <attainGoal name="forrest:generate"/>
     </postGoal>

or call "maven forrest:generate" directly.

---

I am sure there is a better way to do this, but given the lack of plugin 
writing docs this was the easiest thing I could figure out that would 
make things work.

Is there interest in improving this? Anyone want to help out here? I 
think most of the things that need doing are just an hour of two of work 
for those among you who know maven well :D

---

Partial todo
------------
- add plugin to forrest cvs or maven cvs (which one?)

- figure out a full POM for forrest and list all of its dependencies 
(the gump descriptor should be a good start)

- patch the most recent forrest install buildfile as I did (really 
minimal changes only, in fact)

- patch the buildfile to customize the classpath to reference 
dependencies in the repository, rather than include a whole bunch of 
jars in the plugin; remove all the jars

- properly structure the plugin so that it adheres to maven plugin 
conventions and things like a manifest are auto-generated

- remove unused stuff like the webapp and forrestbot functionality from 
the plugin

- figure out how to neatly replace the xdoc generation (right now the 
forrest:generate target just overwrites any maven-generated files which 
are in the way)

- customize forrest skins to include a reference to the maven-generated 
project reports if they exist

- write a project.xml (maven POM) -> status.xml (Forrest status file) 
converter

- perhaps write an all-new doc generation plugin where it is easier to 
customize whether JSL or forrest or something else is used?

---

cheers,

- Leo



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: basic forrest plugin for maven

Posted by Jeff Turner <je...@apache.org>.
Thanks a lot :)  I'll download Maven and see about integrating this ASAP.

--Jeff

On Mon, Jun 02, 2003 at 07:42:03PM +0200, Leo Simons wrote:
> It's been suggested this thing should be further developed and hosted 
> here. Currently looking at the forrest cvs module and figuring out how 
> to patch what.....
> 
> cheers!
> 
> - Leo
...

Re: basic forrest plugin for maven

Posted by Leo Simons <le...@apache.org>.
Leo Simons wrote:
> 2) install the plugin
> http://lsd.student.utwente.nl/repository/forrest/jars/maven-forrest-plugin-1.0.jar 

now is

http://lsd.student.utwente.nl/repository/forrest/jars/maven-forrest-plugin-1.1.jar 


> 2) get plugin patch
>  wget http://cvs.apache.org/~leosimons/maven-forrest-plugin-20030605.zip 

now is

http://cvs.apache.org/~leosimons/maven-forrest-plugin-20030610.zip

there were some bugs in classpath management. Cocoon is picky about what 
xalan version it accepts :D

> = Things To Do =
> 
> - add plugin to forrest cvs

whoever adds this, please grab the latest stuff from the urls above. I'm 
doing further development at 
http://cvs.apache.org/viewcvs.cgi/avalon/buildsystem/xml-forrest/ since 
I need this stuff for avalon atm.

> - figure out how to neatly replace the xdoc generation (right now the
> forrest:generate target just overwrites any maven-generated files
> which are in the way)
> 
> this is the most tricky part. A symbiotic relationship between maven and
> forrest can exist to some extent, as you can have maven-generated files
> easily reference files which will be generated later by forrest, and
> vice versa (where I believe filterlinks.xsl should be modified in
> forrest to not overwrite any stuff we know maven will generate).
> 
> <i>(I built a patch for that but its not operational yet.)</i>

http://cvs.apache.org/viewcvs.cgi/avalon/buildsystem/documentation/resources/stylesheets/filterlinks.xsl

has these additional links, and it works nicely.

cheers!

- LSD



Re: basic forrest plugin for maven

Posted by Leo Simons <le...@apache.org>.
= Reworked =

I've reworked the plugin so that forrest does not manage its own 
classpath but lets maven download things. Since _a lot_ of the stuff 
that forrest needs is snapshot jars not easily available, I've added 
lots of stuff to a custom maven repository at

http://lsd.student.utwente.nl/repository/

it's my humble opinion that the dependency management for forrest is 
rather horrible to figure out: the project.xml file has the largest list 
of dependencies I've seen for any project!

I also got the impression there are some unused jars in the cvs, and 
some unused projects referenced in the gump descriptor.

= wiki =

I like wikis. Contents of this e-mail up at

http://nagoya.apache.org/wiki/apachewiki.cgi?MavenForrestPlugin

= Intro =

Maven is a nice tool. For those who want more feature-rich documentation 
generation than it offers and a rigid documentation format, with the 
potential to easily scale up to a realtime webapp, it makes sense to 
extend it with forrest. With the new forrest plugin, this is now easy to do.

= Install and usage =

== Installing the plugin ==

dead easy!

1) install maven-beta-9 or later, if you don't have it yet
2) install the plugin
  wget \
 
http://lsd.student.utwente.nl/repository/forrest/jars/maven-forrest-plugin-1.0.jar 
  \
  $MAVEN_HOME/plugins/

== Using the plugin ==

just as easy!

1) convert your maven-format docs to document-v11 format. Keep them in 
src/xdocs/
2) optional: add a forrest.properties file to your project to customize 
any forrest settings, if you want
3) use the 'forrest:generate' goal
  cd $MY_PROJECT
  maven forrest:generate

or add

     <postGoal name="xdoc">
         <attainGoal name="forrest:generate"/>
     </postGoal>

to your project's maven.xml, so you can resume documentation generation 
as normal using 'maven xdoc' and friends.

== Building the plugin yourself ==

1) checkout xml-forrest module
  mkdir ~/cvs/
  cd ~/cvs/
  cvs -d anoncvs@cvs.apache.org:/home/cvspublic checkout \
    xml-forrest

2) get plugin patch
  wget 
http://cvs.apache.org/~leosimons/maven-forrest-plugin-20030605.zip /tmp
  mv /tmp/maven-forrest-plugin* ~/cvs/xml-forrest/src/resources
  cd ~/cvs/xml-forrest/src/resources
  rm -Rf maven-plugin
  unzip maven-forrest-plugin-20030605.zip

3) build and install the plugin
  cd maven-plugin
  maven plugin # this is a target inside the maven-plugin-plugin, atm
               # it just calls the jar:jar goal/target
  maven plugin:install # this is another target inside that plugin;
              # it just copies the generated jarfile into your local
              # maven installation

== Example usage ==

1) install plugin as above
2) checkout avalon and avalon-excalibur modules
  mkdir ~/cvs/
  cd ~/cvs/
  cvs -d anoncvs@cvs.apache.org:/home/cvspublic checkout \
     avalon avalon-excalibur
  cd ~/cvs/avalon-excalibur/compatibility
3) build excalibur-compatibility documentation using maven and forrest
  maven xdoc

4) view the generated docs in 
~/cvs/avalon-excalibur/compatibility/target/docs


= Things To Do =

== Devs wanted! ==

It should be pretty clear what it does (even if you don't know maven or
jelly, like me ;), basically the shbat distribution is generated,
patched, then jarred up along with some minimal script files.
The most tricky bit atm is figuring out how to get the oodles of 
required jars on the proper classpaths. Which I seem to have succeeded in :D

- add plugin to forrest cvs

- figure out how to neatly replace the xdoc generation (right now the
forrest:generate target just overwrites any maven-generated files
which are in the way)

this is the most tricky part. A symbiotic relationship between maven and
forrest can exist to some extent, as you can have maven-generated files
easily reference files which will be generated later by forrest, and
vice versa (where I believe filterlinks.xsl should be modified in
forrest to not overwrite any stuff we know maven will generate).

<i>(I built a patch for that but its not operational yet.)</i>

I saw an anakia2document.xsl sheet and some auxillary files. How easy
would it be to detect whether a given xdoc file is in maven's format and
have forrest run this automatically? Where does one configure forrest to
do that? Is there docs on how to do that (I have a hunch there is some
kind of fancy dynamism in some kind of sitemap :D)?

<i>I took a look at how to do this and gave up rather quickly. The 
mutual dislike between me and XSL is growing rapidly!</i>

- customize forrest skins to include a reference to the
maven-generated project reports if they exist

my current thinking is that for now a "reports" tab should be added to a
temporary tabs.xml file based on a test for existence of the
maven-reports.html file. Is that workable? Where would that test go; how
easy is it to modify the tabs.xml file conditionally like that?

I had a look at tabutils.xsl, tab2menu.xsl, etc. Can't figure out how to 
do this. I think that all that needs to happen is to append

  <div><a href="maven-reports.html">Reports</a></div>

somewhere in some way. How do you guys make sense out of the multitude 
of XSL sheets? Is there some editor that makes it workable?

- write a project.xml (maven POM) -> status.xml (Forrest status file)
converter

- write a navigation.xml (maven site layout -> sitemap.xmap (Forrest 
site layout) converter


cheers!

- Leo



Re: basic forrest plugin for maven

Posted by Leo Simons <le...@apache.org>.
I've reworked the plugin to be able to be integrated with the forrest build.

to see it in action, do this:

wget http://cvs.apache.org/~leosimons/maven-forrest-plugin.zip /tmp
mv /tmp/maven-forrest-plugin.zip ~/cvs/xml-forrest/src/resources
cd ~/cvs/xml-forrest/src/resources
unzip maven-forrest-plugin.zip
cd maven-plugin
#### install maven-beta-9 or later, if you don't have it yet ####
maven plugin # this is a target inside the maven-plugin-plugin, atm
              # it just calls the jar:jar goal/target
maven plugin:install # this is another target inside that plugin;
              # it just copies the generated jarfile into your local
              # maven installation
#### checkout avalon and avalon-excalibur modules ####
cd ~/cvs/avalon-excalibur/compatibility
maven xdoc # site generated using forrest plugin

The maven.xml file in this patch is modified from the maven plugin 
sample at

http://cvs.apache.org/viewcvs.cgi/maven/src/plugins-build/examples/plugin-script/. 


It should be pretty clear what it does (even if you don't know maven or 
jelly, like me ;), basically the shbat distribution is generated, 
patched, then jarred up along with some minimal script files.

more todo:
>> ------------
>> - add plugin to forrest cvs

could someone with appropriate access please get the zipfile mentioned 
above and add its contents to the src/resources directory, after 
verifying its a good idea and the location is a good one?

>> - figure out a full POM for forrest and list all of its dependencies 
>> (the gump descriptor should be a good start)
>>
>> - patch the most recent forrest install buildfile as I did (really 
>> minimal changes only, in fact)

done

>> - patch the buildfile to customize the classpath to reference 
>> dependencies in the repository, rather than include a whole bunch of 
>> jars in the plugin; remove all the jars

"build.syclasspath=only" might help here, since we can just put the 
entire maven classpath on the sysclasspath in the call that runs ant.

>> - properly structure the plugin so that it adheres to maven plugin 
>> conventions and things like a manifest are auto-generated

done.

>> - remove unused stuff like the webapp and forrestbot functionality 
>> from the plugin

how easy is it to strip down the shbat distribution further? Are there 
plans for that, is it wanted? Where would I start?

>> - figure out how to neatly replace the xdoc generation (right now the 
>> forrest:generate target just overwrites any maven-generated files 
>> which are in the way)

this is the most tricky part. A symbiotic relationship between maven and 
forrest can exist to some extent, as you can have maven-generated files 
easily reference files which will be generated later by forrest, and 
vice versa (where I believe filterlinks.xsl should be modified in 
forrest to not overwrite any stuff we know maven will generate), but 
from there it is more tricky.

I saw an anakia2document.xsl sheet and some auxillary files. How easy 
would it be to detect whether a given xdoc file is in maven's format and 
have forrest run this automatically? Where does one configure forrest to 
do that? Is there docs on how to do that (I have a hunch there is some 
kind of fancy dynamism in some kind of sitemap :D)?

>> - customize forrest skins to include a reference to the 
>> maven-generated project reports if they exist

my current thinking is that for now a "reports" tab should be added to a 
temporary tabs.xml file based on a test for existence of the 
maven-reports.html file. Is that workable? Where would that test go; how 
  easy is it to modify the tabs.xml file conditionally like that? My 
hunch is XSLT is in order, which makes me shiver.....

>> - write a project.xml (maven POM) -> status.xml (Forrest status file) 
>> converter
>>
>> - perhaps write an all-new doc generation plugin where it is easier to 
>> customize whether JSL or forrest or something else is used?

my current thinking is that the easiest setup will be to incorporate 
parsing of all maven-style docs into forrest.

lemme know what you guys think! cheers,

- Leo



Re: basic forrest plugin for maven

Posted by Leo Simons <le...@apache.org>.
It's been suggested this thing should be further developed and hosted 
here. Currently looking at the forrest cvs module and figuring out how 
to patch what.....

cheers!

- Leo

Leo Simons wrote:
> Hi gang,
> 
> I've written a very basic forrest plugin:
> 
> http://cvs.apache.org/~leosimons/maven-forrest-plugin.zip (12 megs!)
> 
> I've copied over a forrest snapshot build from feb 19 into the 
> plugin-resources directory, tweaked the forrest.build.xml file (see the 
> forrest.build.xml.patch.txt), added a plugin.properties, 
> project.properties, then added a minimal plugin.jelly script which just 
> calls the ant buildfile.
> 
> ---
> 
> You can see it in use in the avalon-excalibur cvs:
> 
> 1 - install maven beta 9 (or later, probably)
> 2 - unzip the plugin into your maven plugins/ dir
> 3 - checkout the avalon and avalon-excalibur cvses
> 4 - cd avalon-excalibur/compatibility
> 5 - maven xdoc
> 
> Current usage:
> 
>     <postGoal name="xdoc">
>         <attainGoal name="forrest:generate"/>
>     </postGoal>
> 
> or call "maven forrest:generate" directly.
> 
> ---
> 
> I am sure there is a better way to do this, but given the lack of plugin 
> writing docs this was the easiest thing I could figure out that would 
> make things work.
> 
> Is there interest in improving this? Anyone want to help out here? I 
> think most of the things that need doing are just an hour of two of work 
> for those among you who know maven well :D
> 
> ---
> 
> Partial todo
> ------------
> - add plugin to forrest cvs or maven cvs (which one?)
> 
> - figure out a full POM for forrest and list all of its dependencies 
> (the gump descriptor should be a good start)
> 
> - patch the most recent forrest install buildfile as I did (really 
> minimal changes only, in fact)
> 
> - patch the buildfile to customize the classpath to reference 
> dependencies in the repository, rather than include a whole bunch of 
> jars in the plugin; remove all the jars
> 
> - properly structure the plugin so that it adheres to maven plugin 
> conventions and things like a manifest are auto-generated
> 
> - remove unused stuff like the webapp and forrestbot functionality from 
> the plugin
> 
> - figure out how to neatly replace the xdoc generation (right now the 
> forrest:generate target just overwrites any maven-generated files which 
> are in the way)
> 
> - customize forrest skins to include a reference to the maven-generated 
> project reports if they exist
> 
> - write a project.xml (maven POM) -> status.xml (Forrest status file) 
> converter
> 
> - perhaps write an all-new doc generation plugin where it is easier to 
> customize whether JSL or forrest or something else is used?
> 
> ---
> 
> cheers,
> 
> - Leo



Re: basic forrest plugin for maven

Posted by Jeff Turner <je...@apache.org>.
On Sat, May 31, 2003 at 01:25:37PM +0200, Leo Simons wrote:
> Hi gang,
> 
> I've written a very basic forrest plugin:

Cool :)

> Partial todo
> ------------
> - add plugin to forrest cvs or maven cvs (which one?)

Forrest CVS would probably be best.  Send the files to
forrest-dev@xml.apache.org, and we can make a new target for generating
the plugin.

--Jeff

> cheers,
> 
> - Leo

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


RE: Hibernate plugin (was basic forrest plugin for maven)

Posted by Michal Maczka <mm...@interia.pl>.
Hi Ben!

I am bit stacked with Hibernate plugin as
a) Hibernate API is very locked and only way to communicate with it is to
use main method.
b) my knowledge and experience with Hibernate is limited

So please feel free to add anything you might find useful to this plugin.

As I wrote before: I personally regret that I create this plugin..It will be
much better
if Hibernate team will maintain/develop their own plugin.

Michal









> -----Original Message-----
> From: Ben Walding [mailto:default0001@walding.com]
> Sent: Sunday, June 01, 2003 12:27 AM
> To: Maven Developers List
> Subject: Re: Hibernate plugin (was basic forrest plugin for maven)
>
>
> If you ever decide to do anything more with hibernate plugin, let me know.
>
> I wrote simply Torque -> Hibernate schema converter (just a jelly file)
>
> It's not perfect but it did simplify my conversion a little bit.
>
>
>
> Michal Maczka wrote:
>
> >
> >
> >>-----Original Message-----
> >>From: news [mailto:news@main.gmane.org]On Behalf Of Leo Simons
> >>Sent: Saturday, May 31, 2003 1:26 PM
> >>To: dev@maven.apache.org
> >>Subject: basic forrest plugin for maven
> >>
> >>
> >>Hi gang,
> >>
> >>I've written a very basic forrest plugin:
> >>
> >>http://cvs.apache.org/~leosimons/maven-forrest-plugin.zip (12 megs!)
> >>
> >>I've copied over a forrest snapshot build from feb 19 into the
> >>plugin-resources directory, tweaked the forrest.build.xml file (see the
> >>forrest.build.xml.patch.txt), added a plugin.properties,
> >>project.properties, then added a minimal plugin.jelly script which just
> >>calls the ant buildfile.
> >>
> >>---
> >>
> >>You can see it in use in the avalon-excalibur cvs:
> >>
> >>1 - install maven beta 9 (or later, probably)
> >>2 - unzip the plugin into your maven plugins/ dir
> >>3 - checkout the avalon and avalon-excalibur cvses
> >>4 - cd avalon-excalibur/compatibility
> >>5 - maven xdoc
> >>
> >>Current usage:
> >>
> >>     <postGoal name="xdoc">
> >>         <attainGoal name="forrest:generate"/>
> >>     </postGoal>
> >>
> >>or call "maven forrest:generate" directly.
> >>
> >>---
> >>
> >>I am sure there is a better way to do this, but given the lack of plugin
> >>writing docs this was the easiest thing I could figure out that would
> >>make things work.
> >>
> >>Is there interest in improving this? Anyone want to help out here? I
> >>think most of the things that need doing are just an hour of two of work
> >>for those among you who know maven well :D
> >>
> >>---
> >>
> >>Partial todo
> >>------------
> >>- add plugin to forrest cvs or maven cvs (which one?)
> >>
> >>
> >>
> >
> >I will just refer to this single point.
> >I believe that Maven should just host a small bunch of core plugins which
> >will be deeply tested and documented.
> >
> >I myself recently added skeleton of Hibernate plugin..and already regret,
> >because
> >I cannot improve (too many private Methods in Hibernate code)
> and I am not
> >using Hibernate so often.
> >I am not following the changes in Hibernate code .. so it could be that
> >plugin will be broken soon.
> >
> >Other example: Somebody recently provide a patch for
> Maven-JBuilder plugin.
> >It seems that not so many (if someone) of active Maven developers use
> >JBuilder.
> >So there is almost no one who can test this patch and apply it.
> >Committing the code which is untested is very bad practice.
> >
> >So my opinion is: better host maven-forrest plugin @
> >http://xml.apache.org/forrest/
> >
> >Because this is only way to assure the quality of Maven itself and the
> >quality of plugins.
> >
> >Surly Maven can help to "catalog" the plugins etc. But this is a
> different
> >subject...
> >
> >Michal
> >
> >
> >P.S.
> >
> >I used JBuilder Plugin patch just as example and I don't know
> anything about
> >the quality of the patch.
> >
> >
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> >For additional commands, e-mail: dev-help@maven.apache.org
> >
> >
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>
> ----------------------------------------------------------------------
> Nie dziekuj! KLIKAJ!!! >>> http://link.interia.pl/f1717
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Re: Hibernate plugin (was basic forrest plugin for maven)

Posted by Ben Walding <de...@walding.com>.
If you ever decide to do anything more with hibernate plugin, let me know.

I wrote simply Torque -> Hibernate schema converter (just a jelly file)

It's not perfect but it did simplify my conversion a little bit.



Michal Maczka wrote:

>  
>
>>-----Original Message-----
>>From: news [mailto:news@main.gmane.org]On Behalf Of Leo Simons
>>Sent: Saturday, May 31, 2003 1:26 PM
>>To: dev@maven.apache.org
>>Subject: basic forrest plugin for maven
>>
>>
>>Hi gang,
>>
>>I've written a very basic forrest plugin:
>>
>>http://cvs.apache.org/~leosimons/maven-forrest-plugin.zip (12 megs!)
>>
>>I've copied over a forrest snapshot build from feb 19 into the
>>plugin-resources directory, tweaked the forrest.build.xml file (see the
>>forrest.build.xml.patch.txt), added a plugin.properties,
>>project.properties, then added a minimal plugin.jelly script which just
>>calls the ant buildfile.
>>
>>---
>>
>>You can see it in use in the avalon-excalibur cvs:
>>
>>1 - install maven beta 9 (or later, probably)
>>2 - unzip the plugin into your maven plugins/ dir
>>3 - checkout the avalon and avalon-excalibur cvses
>>4 - cd avalon-excalibur/compatibility
>>5 - maven xdoc
>>
>>Current usage:
>>
>>     <postGoal name="xdoc">
>>         <attainGoal name="forrest:generate"/>
>>     </postGoal>
>>
>>or call "maven forrest:generate" directly.
>>
>>---
>>
>>I am sure there is a better way to do this, but given the lack of plugin
>>writing docs this was the easiest thing I could figure out that would
>>make things work.
>>
>>Is there interest in improving this? Anyone want to help out here? I
>>think most of the things that need doing are just an hour of two of work
>>for those among you who know maven well :D
>>
>>---
>>
>>Partial todo
>>------------
>>- add plugin to forrest cvs or maven cvs (which one?)
>>
>>    
>>
>
>I will just refer to this single point.
>I believe that Maven should just host a small bunch of core plugins which
>will be deeply tested and documented.
>
>I myself recently added skeleton of Hibernate plugin..and already regret,
>because
>I cannot improve (too many private Methods in Hibernate code) and I am not
>using Hibernate so often.
>I am not following the changes in Hibernate code .. so it could be that
>plugin will be broken soon.
>
>Other example: Somebody recently provide a patch for Maven-JBuilder plugin.
>It seems that not so many (if someone) of active Maven developers use
>JBuilder.
>So there is almost no one who can test this patch and apply it.
>Committing the code which is untested is very bad practice.
>
>So my opinion is: better host maven-forrest plugin @
>http://xml.apache.org/forrest/
>
>Because this is only way to assure the quality of Maven itself and the
>quality of plugins.
>
>Surly Maven can help to "catalog" the plugins etc. But this is a different
>subject...
>
>Michal
>
>
>P.S.
>
>I used JBuilder Plugin patch just as example and I don't know anything about
>the quality of the patch.
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>For additional commands, e-mail: dev-help@maven.apache.org
>
>
>  
>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


RE: basic forrest plugin for maven

Posted by Michal Maczka <mm...@interia.pl>.

> -----Original Message-----
> From: news [mailto:news@main.gmane.org]On Behalf Of Leo Simons
> Sent: Saturday, May 31, 2003 1:26 PM
> To: dev@maven.apache.org
> Subject: basic forrest plugin for maven
>
>
> Hi gang,
>
> I've written a very basic forrest plugin:
>
> http://cvs.apache.org/~leosimons/maven-forrest-plugin.zip (12 megs!)
>
> I've copied over a forrest snapshot build from feb 19 into the
> plugin-resources directory, tweaked the forrest.build.xml file (see the
> forrest.build.xml.patch.txt), added a plugin.properties,
> project.properties, then added a minimal plugin.jelly script which just
> calls the ant buildfile.
>
> ---
>
> You can see it in use in the avalon-excalibur cvs:
>
> 1 - install maven beta 9 (or later, probably)
> 2 - unzip the plugin into your maven plugins/ dir
> 3 - checkout the avalon and avalon-excalibur cvses
> 4 - cd avalon-excalibur/compatibility
> 5 - maven xdoc
>
> Current usage:
>
>      <postGoal name="xdoc">
>          <attainGoal name="forrest:generate"/>
>      </postGoal>
>
> or call "maven forrest:generate" directly.
>
> ---
>
> I am sure there is a better way to do this, but given the lack of plugin
> writing docs this was the easiest thing I could figure out that would
> make things work.
>
> Is there interest in improving this? Anyone want to help out here? I
> think most of the things that need doing are just an hour of two of work
> for those among you who know maven well :D
>
> ---
>
> Partial todo
> ------------
> - add plugin to forrest cvs or maven cvs (which one?)
>

I will just refer to this single point.
I believe that Maven should just host a small bunch of core plugins which
will be deeply tested and documented.

I myself recently added skeleton of Hibernate plugin..and already regret,
because
I cannot improve (too many private Methods in Hibernate code) and I am not
using Hibernate so often.
I am not following the changes in Hibernate code .. so it could be that
plugin will be broken soon.

Other example: Somebody recently provide a patch for Maven-JBuilder plugin.
It seems that not so many (if someone) of active Maven developers use
JBuilder.
So there is almost no one who can test this patch and apply it.
Committing the code which is untested is very bad practice.

So my opinion is: better host maven-forrest plugin @
http://xml.apache.org/forrest/

Because this is only way to assure the quality of Maven itself and the
quality of plugins.

Surly Maven can help to "catalog" the plugins etc. But this is a different
subject...

Michal


P.S.

I used JBuilder Plugin patch just as example and I don't know anything about
the quality of the patch.



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org