Comments....

On Fri, Mar 21, 2008 at 5:07 PM, Brian E. Fox <[EMAIL PROTECTED]>
wrote:

> Thanks for the feedback Joshua, a few comments below:
>
> >1) I can't do the equivalent of ant -projecthelp
> >Pointing out that all the common maven commands are documented on the
> >wiki doesn't seem to alleviate this concern, which I admit really
> >puzzles me. Has anyone else encountered this complaint about maven? I
> >think the ability to easy get a list of configured plugins within the
> >pom would be really handy.
>
> The exact equivalent is nearly impossible since technically it's any
> plugin that is in any repo you have configured. (m2e lets you find this
> via the index) If they just want to know the list of phases, I guess
> that could be added to the -? Output. Is there something more they want?


You are letting perfection get in the way of "good enough". Just list out
the help of all plugins explicitly referred to in the pom is a huge win.
Chances are that if a plugin is not configured in the pom the person doesn't
care about it.

If a plugin isn't mentioned in the pom then just indicate in the help
message that there are other plugins available. If the person keeps asking
for help about a plugin (explicitly referenced or not) then start including
that in the default help for that user. A simple '.m2/.help-history' file
should be enough. If they keep asking for detailed help about one plugin
have that listed first.

Also a good idea - tie in the wiki to the mvn command line. Have an option
that displays help on cmd line but also launches browser to display local
help with a link back to the wiki.


>
> >2) We have lots of ant run-* targets I like to use.
> >My response: Letting them know of the mvnrun script I've checked into
> >our source tree that effectively runs the following:
>
> I think the exec plugin can do something similar.
>

Hmmmm ... "I think"  ... you don't know. Hmmm... says it all ...

> Hopefully we get some more input on this thread about other issues.
>
>
More work on making simple problems simple. If something takes 3 lines in a
shell script it shouldn't be impossible in mvn. For example (latest beef):

1. "mvn deploy" on the top level - I only want to deploy the war (which is
in the 'web' module). Mvn deploys everything. Not at all obvious how to
change that behavior. Rather than spend any more time on this issue, I just
cd to the web module and run mvn there. Shouldn't have to do it ... easy to
do something like this with ant. mvn makes it impossible(?).

2. Connection goes down while deploying. "mvn deploy" rebuilds everything
(when it works - a lot of times there is some corruption in one of its
metadata files?) So most of the time I just scp up the war myself.

So suggestions using deploy plugin as an example:

   - each discrete deploy step should be a separate goal.
   - each discrete deploy step should have a 'start-with' ability
   - if a deploy step fails the plugin should say 'fix this problem and
   do a "mvn deploy:start-with-foo" to continue the deployment'

RTFM = users who are eager to replace the product. You want the manual to be
*optional*. That is the sign of a kick-ass product. But it is very hard.

I wish you good luck!
-- 
Patrick Moore

Reply via email to