2010-03-01 6 views
0

Je dois télécharger un fichier à partir d'un référentiel de présentation non standard.Télécharger la dépendance Maven2 à partir d'un référentiel de présentation non standard

La mise en page du référentiel norme est groupId>/<artifactId>/<version>/<artifactId>-<version>.<packaging> cependant, je dois télécharger le fichier suivant:

http://hudson.myserver.com:10000/repo/ocp-services/schemas/trunk/201/archive/schemas/dist/schemas.jar 

où les services de ocp-est efficacement groupId, schémas est artifactId et 201 est la version.

Comment pourrais-je ajouter une dépendance à ce fichier et l'obtenir téléchargé dans mon projet et dépôt local?

C'est un référentiel de fichiers Hudson si cela est de toute aide, mais il est un tiers si difficile de les amener à changer tout endroit.

Répondre

1

Une option serait d'enregistrer une mise en œuvre personnalisée ArtifactRepositoryLayout et de déclarer un dépôt en utilisant cette mise en page personnalisée. Je n'ai jamais fait cela mais cela devrait être possible, vérifiez ceci blog post.

Une deuxième option serait de configurer Maven passer par une sorte de proxy personnalisé (par exemple un Servlet) et de réécrire l'URL à la volée pour cette dépendance particulière.

Dans les deux cas, je crains que Maven se plaindra de métadonnées manquantes (« Une dépendance Maven est non seulement un fichier JAR », voir 3.5.5. Maven's Dependency Management) parce que le référentiel de fichiers hudson est juste pas Maven dépôt. Peut-être que cela peut être géré par programme si. Mais comme je l'ai dit, je n'ai jamais fait ça.

Une troisième option serait de demander au projet la construction du JAR vous devez deploy (dans le sens de Maven). Ce serait bien sûr la meilleure solution.

Une dernière option serait de simplement télécharger ce JAR et install it manuellement dans votre référentiel local. Si c'est une option, allez-y.

0

Avez-vous essayé d'ajouter ceci à votre pom.xml:

<dependencies> 
      <dependency> 
       <groupId>ocp-services</groupId> 
       <artifactId>schemas</artifactId> 
       <version>201</version> 
       <type>jar</type> 
      </dependency> 
     </dependencies> 

ou si cela ne fonctionne pas comme Pascal dit l'installer manuellement

Questions connexes