Thinking about the developer's perspective a bit, I came up with some suggestions but no actual language.
The developer is a person who wants to build units of software into distributable products, so it's useful to talk briefly about "lifecycle", "phase", "goal", "execution", and "artifact" in terms familiar to such a person. *Briefly* -- full details should be linked. This is simply to define terms which will then be used to map the nature of "Maven plugin" to his experience. A developer probably has a general notion of what a "plugin" is, so what he needs is to know what a *Maven* plugin is: an assembly of Java classes which provides additional concepts and behaviors that the Maven framework can use in building your projects. It can define additional lifecycles and phases, and it provides goals that you may bind to phases in order to perform additional work during the build. There should be a link to how one creates a Maven plugin, elsewhere. It may be well to mention at *this* point that much of Maven's "built-in" behavior is actually provided by included plugins. In this way, one first learns what a Maven plugin is and then immediately sees application of the concept through the lens of the knowledge one has just gained. Perhaps pick one common plugin as an example. Someone noted that "goal" and "Mojo" are often used interchangeably, but it may be good to mention here that "goal" is a named behavior and "Mojo" is its implementation. (If I have that right.) -- Mark H. Wood Lead Technology Analyst University Library Indiana University - Purdue University Indianapolis 755 W. Michigan Street Indianapolis, IN 46202 317-274-0749 www.ulib.iupui.edu
signature.asc
Description: Digital signature