Uploaded image for project: 'Maven Site Plugin'
  1. Maven Site Plugin
  2. MSITE-453

Add new lifecycle bindings for "maven-skin" packaging

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • None
    • backlog, wontfix-candidate
    • None
    • None
    • Patch

    Description

      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.

      Attachments

        1. new-lifecycle-mappings.patch
          3 kB
          Benjamin Bentmann

        Issue Links

          Activity

            People

              Unassigned Unassigned
              bentmann Benjamin Bentmann
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: