Uploaded image for project: 'Ivy'
  1. Ivy
  2. IVY-980

NullPointerException when resolving module without revision in the pattern

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.0-RC1, 2.0-RC2
    • 2.0
    • Core
    • None
    • Intel / Windows 2000 (Server) / Windows XP.

    Description

      When I switched to RC1 or RC2 I experianced the following error (which worked fine in previuos versions).

      When there is a dependancy which uses the rev="+" and there is no revision on the artifact in the repository the resolver throws a null pointer.

      [ivy:resolve] :::: WARNINGS
      [ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::
      [ivy:resolve] :: UNRESOLVED DEPENDENCIES ::
      [ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::
      [ivy:resolve] :: acme#SomeJar;+: java.lang.NullPointerException at org.apache.ivy.plugins.resolver.Bas
      icResolver.resolveAndCheckRevision(BasicResolver.java:457)
      [ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::

      I have a filesystem resolver with the following pattern:
      <filesystem name="remote3rdParty" checkmodified="false" cache="systemCahce">
      <artifact pattern="\\someServer\IvyRepo\external[organisation][artifact]-[revision].[ext]"/>
      <artifact pattern="\\someServer\IvyRepo\external[organisation][artifact].[ext]"/>
      </filesystem>

      (Some artifacts in the 3rd party library don't have versions).

      The file path is:
      \\someServer\IvyRepo\external\acme\SomeJar.jar

      The dependancy is:
      <dependency name="SomeJar" org="acme" rev="+" conf="runtime-jar->default;"/>

      From a client point of view, the module doesn't care what version... just get the latest.... and if there is no version just get the current one.

      There are a number of work arounds...

      a) Ensure all JARs in the repository have a version ... Invent a version on ones which don't have any version. (Probably a good idea anyway).

      • If this is the case then thats fine. It should just be a documented feature

      b) Use the beta version of ivy.

      c) Change the client module to specify no revision rev=""

      Attachments

        Activity

          People

            maartenc Maarten Coene
            cpaddon Craig paddon
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: