Uploaded image for project: 'Maven Eclipse Plugin (RETIRED)'
  1. Maven Eclipse Plugin (RETIRED)
  2. MECLIPSE-152

Write .classpath with ordered dependencies [incl. Patch]

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.2
    • Fix Version/s: 2.5
    • Component/s: None
    • Labels:
      None
    • Environment:
      Windowz XP, eclipse 3.2

      Description

      Related to my comment in MNG-1412 - I decided to take a quick stab at the eclipse plugin and voilá! Ordered dependencies in the written .classpath. This is only a prototype (my first attempt at maven development) and could serve as basis for other orderings like groupId, transitive nearness etc.

      Initially I wanted to make IdeDependency comparable (similar to MECLIPSE-150 which added proper equals) but having multiple Comparators seemed better for extensibility.

      It worked right away, does exactly what I want (ordering by artifactId) and has minimal impact. I am not familiar with the maven codebase so I hope this is the right place to do the actual ordering before writing; obviously it should observe a property like -DorderDependencies=artifactId or something similar. The patch is against svn r425750 (2006-08-30). Currently no testcase but if someone tells me how to add/read an orderDependencies property I might add one.

      Comments welcome.

        Attachments

        1. orderDependencies.patch
          3 kB
          Holger Hoffstätte
        2. orderDependencies.patch
          3 kB
          Holger Hoffstätte

          Issue Links

            Activity

              People

              • Assignee:
                aheritier Arnaud Heritier
                Reporter:
                h2o Holger Hoffstätte
              • Votes:
                9 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: