I see two things here:
- You're looking at the SNAPSHOT version of the project and the code is constantly changing. Both Ivy and Maven can be configured to examine the latest SNAPSHOT, and download it if it has changed.
- You're looking at the Release repo, but the official releases are coming fast and furious. You simply want to use the latest. Both Ivy and Maven can be configured to automatically pull the latest available release (although both my complain about the fact you don't have a specified release).
If you use Nexus, you can setup both Ivy and Maven to override the default master repo used, http://repo1.maven.org
, and consider your local Nexus repo as the world master of all Maven repos. If your local Nexus repo has that artifact, it'll download that local artifact to the build. If not, your local Nexus repo will go out and fetch the requested artifact.
If you set up your local Nexus repo that way, and you deploy (Maven) or publish (Ivy) your jars to the public repo, the jars will be stored in your local Nexus repository and not the remote repository.
Now, if you want to see if a new version is available, you could use the http://search.maven.org
rest API and a bit of scripting elbow grease to check to see if there's a new version of that artifact. Then, you'd setup that repo check as a Jenkins job. Jenkins will run this script, download the latest jar, if it was changed, and then publish or deploy it into your local Nexus repo.
If you want to build the latest, you could setup Jenkins to poll that remote third party repo. If that repo is a Git or Subversion repo, the polling isn't going to take a lot of resources (although I'd only poll that repo no more than once per day just to be kind). Then, that remote repo is merely another local Jenkins job. Add a Publish/Deploy plugins and publish/deploy that artifact to your local Nexus repo.