Maven
  1. Maven
  2. MNG-47

Reorganize maven-artifact code splitting it up between maven-project and wagon proper

    Details

    • Type: Task Task
    • Status: Closed Closed
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0-alpha-1
    • Component/s: None
    • Labels:
      None
    • Number of attachments :
      0

      Description

      What maven 2.x needs specifically in terms of artifact handling is relatively small so the small parts of maven-artifact that are pertinent to maven should be moved into maven-project. But there are some notions that are currently in maven-artifact that are of general use in Wagon.

      For example we have an artifact downloader and artifact resolver which are tools that would be relevent to projects like Plexus where we want to pull down the dependencices for a particular component. Plexus could either use things like the artifact downloader and resolver directly or be passed a live instance in order to integrate with client code. So Maven would already have configured a downloading mechanism based on Wagon and this we would like to pass to Plexus for use because we want the same policies being used when downloading dependencies for a project as downloading the dependencies of a component.

      So I think what we would end up is having something like the artifact resolver which uses a downloader and executes various policies as desired: in our case we have special behavior for snapshots and JAR overrides. We should be able to easily decorate the standard behaviour of the download mechanism for Maven's purposes and to make adding addition behaviour easier for users.

        Activity

        Hide
        Jason van Zyl added a comment -

        Another reason for doing is the control from the client code how things like offline mode might work or any other notions that might be created in client code.

        Show
        Jason van Zyl added a comment - Another reason for doing is the control from the client code how things like offline mode might work or any other notions that might be created in client code.
        Hide
        Jason van Zyl added a comment -

        A new maven-artifact module has been imported. This layer is free from maven-core proper. It depends on wagon and plexus so it can be made generally reusable.

        Show
        Jason van Zyl added a comment - A new maven-artifact module has been imported. This layer is free from maven-core proper. It depends on wagon and plexus so it can be made generally reusable.

          People

          • Assignee:
            Unassigned
            Reporter:
            Jason van Zyl
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: