Maven repository local dans settings.xml vs pom.xml
Je suis nouveau sur Maven. Je voudrais utiliser la configuration suivante:
1) un dépôt distant pour télécharger publique artefact
2) un local partagé référentiel pour téléchargé des objets qui fonctionne très bien, par adjonction, à settings.xml:
<localRepository>C:/m2repo</localRepository>
3) Maintenant, je voudrais aussi avoir un référentiel pour les objets référencés
à partir d'un seul projet, comme une ancienne "lib" le dossier.
J'ai donc ajouté à la suite du projet de pom.xml:
<repository>
<id>repo</id>
<name>repo</name>
<releases>
<enabled>true</enabled>
<checksumPolicy>ignore</checksumPolicy>
</releases>
<url>${project.baseUri}repo</url>
</repository>
J'ai déployé quelques pots pour le "repo" le dossier, mais quand je les ajouter en tant que dépendances en pom.xml ils ne sont pas résolus. Maven ne regarde que le référentiel partagé et le dépôt distant. Quand je copie le contenu de "repo" partagée "m2repo", il fonctionne. Ai-je raté quelque chose ou est-ce l'installation n'est pas possible?
Vous devez vous connecter pour publier un commentaire.
Si possible, personnellement, je ne pas pense que c'est une bonne pratique de le faire. En fonction de votre utilisation de ce post sera utile: http://blog.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea. Vous aussi vous voulez reproductibles et portables du projet, cette question traite de ce sujet. Merci de ne pas vérifier dans les bocaux dans votre VCS juste pour la portabilité, le saké!
Je vais essayer de vous aider si vous insistez toujours. Pour faire de votre modèle, votre "repo" dossier doit suivre la structure définie ici.
Même si votre "repo" dossier " est un fichier local de la structure, Maven va encore le traiter comme si c'est un dépôt distant, tout comme maven central. Cela signifie que, chaque fois que vous êtes la construction de votre projet, Maven essayez de télécharger le pots à partir de votre "repo" dossier " pour votre .m2 référentiel de trop:
Vous pouvez voir que la goyave pot va être
downloaded
du "repo" dossier " pour mon .m2 référentiel puisqu'il est disponible à partir de mon "repo" dossier".La cause de mon problème a été la mise en miroir de bases de mon settings.xml, je l'ai mise en miroir à tous les référentiels:
qui j'ai changé uniquement des référentiels externes:
Maintenant mon artefacts se trouvent dans le "projet" référentiel. Cependant, Maven se comporte différemment que ce que j'attendais, comme ceilfors écrit, le système de fichiers du référentiel est le même traitement que les dépôts distants - objets sont copiés à partir de là dans le dépôt local, ce qui conduit à la duplication des pots entre le référentiel local et d'autres fichiers dépôts. Donc, je vois le paramètre n'est pas idéal. Cependant, dans mon cas, je trouve encore le quickiest façon de mavenize le projet.