Add new lifecylce mapping "maven-skin"
--------------------------------------
Key: MNG-3343
URL: http://jira.codehaus.org/browse/MNG-3343
Project: Maven 2
Issue Type: New Feature
Components: General
Affects Versions: 2.0.8
Reporter: Benjamin Bentmann
Priority: Minor
Attachments: new-lifecycle-mappings.patch
Currently, creating a custom skin for Maven is done by a project with packaging
"jar". The attached patch intents to introduce an individual lifecycle mapping
named "maven-skin" for this purpose.
Why that? I consider the re-usage of the "jar" packaging an abuse for the case
of building a Maven skin. On the one hand, the "jar" packaging does too much.
Skins usually do not get compiled or unit-tested, do they? Since any unused
plugin invocation is an unnecessary risk of a build failure (sorry to say), I
would appreciate a lifecycle mapping that is not overdressed. On the other
hand, I could image that skins required some additional processing some day
like a check whether all required images are present in the skin or whether the
CSS references unknown IDs/names. Having a distinct lifecylcle mapping in the
Maven Core would allow for a central definition of the build steps instead of
requiring all users to extend the "jar" packaging.
Especially for the first reason, i.e. having a packaging that does not more
than required, the patch also defines a "resources" packaging. Such a packaging
is intended for JARs that just contain resources one wants to share with other
projects like rulesets for PMD, Checkstyle, etc. The lifecylcle mappings
"resources" and "maven-skin" are identiical (now) but I consider it a bad
practice to merge different use-cases just because they happen to be equal by
coindicence.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira