web-dev-qa-db-fra.com

Comment configurer Maven2 pour publier sur Artifactory?

Actuellement, j'ai un projet Maven2 qui construit un JAR lorsque vous exécutez:

mvn clean package

Je dois maintenant Tweak le pom.xml pour publier ce fichier JAR (myapp.jar) vers un serveur Artifactory fonctionnant sur:

http://myartifactory/artifactory/simple/myorg/myapp/0.1

J'ai essayé d'ajouter un <repositories> élément à mon pom.xml mais rien n'est publié avec cette config:

<repositories>
    <repository>
        <id>myartifactory</id>
        <url>http://myartifactory/artifactory/simple/</url>
    </repository>
</repositories>

Avez-vous des idées sur la façon dont je pourrais faire fonctionner la publication? Par souci de simplicité, faites comme si ce dépôt Artifactory est authentifié pour accepter les publications/écritures d'un utilisateur avec un username=foo et password=bar.

19
IAmYourFaja

Vous avez deux options (veuillez noter que la dernière est celle recommandée):

Ajoutez une partie DistributionManagement à votre pom et une partie server à votre settings.xml

  1. Supposons que vous souhaitiez déployer sur le référentiel libs-snapshot-local. Dans ce cas, vous devez accéder au navigateur d'arborescence dans Artifactory, vous concentrer sur le niveau du référentiel, copier le Distribution Management extrait et collez-le dans votre pom.xmlDistribution Managment
  2. Ensuite, vous devez indiquer à maven les informations d'identification. Pour cela, cliquez sur votre nom d'utilisateur dans le coin supérieur droit, entrez votre mot de passe pour déverrouiller l'écran, copiez la balise server de Maven Settings panneau: enter image description here Celui-ci que vous collez dans votre settings.xml. N'oubliez pas de remplacer $ {server-id} par le vrai ID serveur (celui que vous avez maintenant dans Distribution Management).
  3. Maintenant, lancez simplement mvn deploy et apprécie.

Travailler avec Maven Artifactory Plugin:

  1. Ajoutez le <plugin> partie comme décrit dans le wiki à votre pom.xml. Il comprend à la fois le référentiel cible et les informations d'identification (veuillez utiliser la source d'informations d'identification externes, comme les variables d'environnement ou les propriétés système).
  2. Courir mvn deploy et profitez non seulement du déploiement sur Artifactory, mais également des fonctionnalités supplémentaires décrites ci-dessous.

Fonctionnalités supplémentaires du plug-in Artifactory Maven (en plus du déploiement régulier de Maven):

  1. Autoriser l'ajout de propriétés personnalisées aux fichiers déployés
  2. Fournissez la nomenclature de build (buildInfo), permettant Build Integration avec n'importe quel serveur de build (même ceux non pris en charge par JFrog) ou même avec des builds autonomes (sans serveur de build du tout).
32
JBaruch