Hi, I am developing a maven plugin for my customer's specific business need :
There are teams which use their own artifact manager (Nexus repository ) for their development, then those teams deliver their binaries and sources in my customer's corporate Nexus repository. These teams need to make sure that their project's dependencies (artifacts and transitive dependencies) do exist on the corporate Nexus repository So i am developping a maven 2 plugin that allows to : step 1- Grab a project's artifact and transitive dependencies ste p2 - For each artifact, make a request to a specific and given remote repository (given as a mojo parameter) and check if that artifact is available. step 3 - Then dump out a report with a list of the project's declared artifacts that are missing in the remote repository For the step2, I have 2 options: Either make a maven GAV (groupId, artifactId, version) request thanks to Nexus REST endpoints nexus/service/local/data_index?g=groupId;a=artifactId&v=version But the drawback is that my maven plugin is linked to Nexus technology. I thought using WagonManager component, getArtifact(Artifact artifact, List remoteRepositories) but the problem is that this method doesn't care about my given specific remote repository URL as a parameter if the maven settings.xml file contains a <mirror> section. My questions are : - Is there a way to force Maven WagonManager to skip Mirrors while downloading remote artifacts ? If not, is there a way programmatically to find if a given groupId, artifactId and version are available on a specific and given remote repository ? Thanks for your support Marc LEVI Assistant Extérieur RBIS - MNM02 /MCM Département MIB Platform - Technical Architecture DFDT Valmy 5 - 15, rue Rol Tanguy 93000 Montreuil Bureau 2330 Tel: +33 1 57 43 18 13 internal : 31813 This message and any attachments (the "message") is intended solely for the intended addressees and is confidential. If you receive this message in error,or are not the intended recipient(s), please delete it and any copies from your systems and immediately notify the sender. Any unauthorized view, use that does not comply with its purpose, dissemination or disclosure, either whole or partial, is prohibited. Since the internet cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS (and its subsidiaries) shall not be liable for the message if modified, changed or falsified. Do not print this message unless it is necessary,consider the environment. ---------------------------------------------------------------------------------------------------------------------------------- Ce message et toutes les pieces jointes (ci-apres le "message") sont etablis a l'intention exclusive de ses destinataires et sont confidentiels. Si vous recevez ce message par erreur ou s'il ne vous est pas destine, merci de le detruire ainsi que toute copie de votre systeme et d'en avertir immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de ce message qui n'est pas conforme a sa destination, toute diffusion ou toute publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer l'integrite de ce message electronique susceptible d'alteration, BNP Paribas (et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese ou il aurait ete modifie, deforme ou falsifie. N'imprimez ce message que si necessaire, pensez a l'environnement.
