Debugging why Nexus cannot find an artifact (?describe)

Note:  This only works for Nexus 1.6 and later.


If you are unable to find an artifact that you just know is there locally in your Nexus, the most likely causes of failure are:

  1. The proxy repository containing the artifact is not in your group repository
  2. The download was blocked by a routing rule

Nexus provides a tool to debug the process used to resolve an artifact.  If you want to see information about how Nexus is finding ( or not finding ) artifacts, put the URL of the artifact that Maven is trying to download into a browser and add

?describe

to the end of it, like this: 

http://localhost:8081/nexus/content/groups/public/foo/bar/1.0/bar-1.0.jar?describe

Instead of returning the artifact, Nexus will return debug output which can answer questions like

  • where Nexus looked for an artifact
  • if the artifact could not be found and why
  • when the artifact is found, statistics about the process used to find the artifact.

Tip: Check the "processedRepositoriesList" and "appliedMappings" respectively in the output.


Here we see an example output showing that the artifact was not found due to an exclusive routing rule for "./project/."  (Note that the repositories searched are also listed):

{
  "data":{
    "requestUrl":"http://localhost:8081/nexus/content/groups/public/test/project/1.0/project-1.0.jar?describe",
    "processingTimeMillis":471,
    "request":{
      "requestUrl":"http://localhost:8081/nexus/content
 /groups/public/test/project/1.0/project-1.0.jar?describe",
      "requestPath":"/test/project/1.0/project-1.0.jar",
      "requestContext":[
        "request.received.timestamp=1276286536595",
        "request.address=0:0:0:0:0:0:0:1%0",
        "request.remoteOnly=false",
        "request.url=http://localhost:8081/nexus/content/groups/public/test/project/1.0/project-
 1.0.jar?describe",
        "request.localOnly=false",
        "request.appRootUrl=http://localhost:8081/nexus"
      ]
    },
    "response":{
      "responseType":"NOT_FOUND",
      "processedRepositoriesList":[
        "public",
        "snapshots",
        "thirdparty",
        "central",
        "java.net-m2",
        "java.net-m1-m2",
        "google",
        "apache-snapshots",
        "codehaus-snapshots"
      ],
      "appliedMappings":[
        "public repository applied [11b647d6117038d8=
 [type=EXCLUSION, groupId=public, patterns=[.*/project/.*], mappedRepositories=[releases]]]"
      ]
    }
  }
}
Have more questions? Submit a request

0 Comments

Article is closed for comments.