Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-407

Need a way to turn off transient fetching of libraries

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0-alpha-2
    • 2.0-alpha-3
    • None
    • None
    • ant1.7alpha on linux, behind a proxied firewall

    Description

      We need a way to turn off transient retrieval of stuff in the ant tasks. If, for example, I ask for commons-logging-1.04, the runtime pulls down everything ever used in it
      [artifact:dependencies] Downloading: commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.pom
      [artifact:dependencies] Transferring 7K
      [artifact:dependencies] Downloading: commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.pom.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.pom
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.pom.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: junit/junit/3.7/junit-3.7.pom
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: junit/junit/3.7/junit-3.7.pom.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: log4j/log4j/1.2.6/log4j-1.2.6.pom
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: log4j/log4j/1.2.6/log4j-1.2.6.pom.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: logkit/logkit/1.0.1/logkit-1.0.1.pom
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: logkit/logkit/1.0.1/logkit-1.0.1.pom.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: logkit/logkit/1.0.1/logkit-1.0.1.jar
      [artifact:dependencies] Transferring 70K
      [artifact:dependencies] Downloading: logkit/logkit/1.0.1/logkit-1.0.1.jar.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: log4j/log4j/1.2.6/log4j-1.2.6.jar
      [artifact:dependencies] Transferring 342K
      [artifact:dependencies] Downloading: log4j/log4j/1.2.6/log4j-1.2.6.jar.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: junit/junit/3.7/junit-3.7.jar
      [artifact:dependencies] Transferring 114K
      [artifact:dependencies] Downloading: junit/junit/3.7/junit-3.7.jar.md5
      [artifact:dependencies] Transferring 0K
      [artifact:dependencies] Downloading: avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar
      [artifact:dependencies] Transferring 62K
      [artifact:dependencies] Downloading: avalon-framework/avalon-framework/4.1.3/avalon-framework-4.1.3.jar.md5
      [artifact:dependencies] Transferring 0K

      As a consequence, the classpath is then set up wrong. And if we copy the contents of that path (e.g. into the lib dir of a WAR, we end up with conflicting JAR files).

      Another example, if if declare a dependency on jaxen-1.1beta6. That was built against dom4j-1-5.2. That doesnt have an entry in the maven2 repository, so the build fails. Yet all jaxen needs is a JAXP parser, for which xerces works perfectly well.

      I've looked at the scope attribute, and it seems that transience is certainly noted as a problem, but I'm not sure that works. What I really need is a transient=on/off attribute, so I can run with transience off when I am being 100% explicit about all my dependencies.

      Attachments

        Activity

          People

            brett Brett Porter
            steve_l Steve Loughran
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: