Maven 1.x XDoc Plugin
  1. Maven 1.x XDoc Plugin
  2. MPXDOC-141

Perform JSL transforms on xdocs *only* when they have changed

    Details

    • Type: Improvement Improvement
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8
    • Fix Version/s: 1.10
    • Labels:
      None
    • Environment:
      Maven 1.0.2
    • Number of attachments :
      1

      Description

      Speed up the "maven site" command be eliminating tranforms of unchanged documents. (Patch attached.)

      There are also some ant image and stylesheet copies that seem to me should have overwrite="false" to eliminate redundant copies. Is there a reason for overwrite="true"?

      Brent Worden said on the maven dev list: "You might want to include some more source files for the uptodate check. The pom, the site.jsl or custom jsl, navigation.xml, properties files, and other files all contribute to the site contents."

      I'm not sure exactly what the build dependencies are (I can't really read jelly/jsl code that well) but I think some of the dependencies are handled before we get to this step, since it the performJSL tag is called for srcdir="$

      {maven.gen.docs}

      " and srcdir="$

      {maven.docs.src}

      " and the "uptodate" check is called inside a j:forEach loop. So, I think some of the dependencies you mentioned may have already been handled.

      I'm pretty sure that the site.jsl and navigation dependencies should be handled within this "uptodate" tag. I'm just not comfortable enough with the jelly, jsl, etc. to be comfortable trying to handle all the dependencies.

      The patch that I have does accelerate my build significantly when things haven't changed, but there is a risk that someone could be burned by a dependency not being handled and a source change not being reflected in the generated site.

      (Estimated work remaining assumes strong knowledge of jelly and jsl)

        Activity

        Hide
        Lukas Theussl added a comment -

        Patch applied with slight modification: I introduced a new property 'maven.xdoc.skip.uptodate' so the speed-up may be switched on optionally (default is off). Thanks!

        Show
        Lukas Theussl added a comment - Patch applied with slight modification: I introduced a new property 'maven.xdoc.skip.uptodate' so the speed-up may be switched on optionally (default is off). Thanks!

          People

          • Assignee:
            Unassigned
            Reporter:
            Sean Gilligan
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 4 hours
              4h
              Remaining:
              Remaining Estimate - 4 hours
              4h
              Logged:
              Time Spent - Not Specified
              Not Specified