Comment configurer un référentiel Maven privé et accessible à distance?

Je dois mettre en place un référentiel Maven pour certaines bibliothèques internes à l’entreprise, qui ne doivent être accessibles que par nos développeurs (c.-à-d. Sécurisées), tout en restant accessible de manière sécurisée sur Internet.

Je suis habitué à mettre en place des pensions Maven publiques, mais je ne suis pas sûr du meilleur moyen de mettre en place une pension privée accessible à distance.

Comment puis-je faire ceci?

La solution consiste à utiliser un gestionnaire de référentiels Maven, tel que Nexus, Artifactory ou Archivia.

Vous installez le MRM sur un serveur et le configurez avec les détails d’authentification des utilisateurs auxquels vous souhaitez y accéder.

Vous pouvez voir une instance Nexus accessible au public à l’ adresse https://oss.sonatype.org et également à l’ adresse https://repository.apache.org. Il est donc relativement sûr de supposer que l’authentification dans Nexus est fiable et sécurisée.

Artifactory est disponible en tant que service hébergé en ligne, et nous l’utilisons (le service hébergé en ligne) pour l’hébergement de nos artefacts internes.

Archivia est entretenu par de très bons gars et je pense qu’ils ont aussi bien verrouillé la situation.

Si vous souhaitez être opérationnel rapidement et que vous ne souhaitez pas gérer un serveur, je vous recommande d’utiliser un service d’hébergement tel qu’Artifactory. Je ne sais pas s’il existe un service d’hébergement en ligne Nexus ou Archivia.

Maintenant pour les divulgations:

  1. JFrog (créateurs d’Artifactory) est partenaire de mes employeurs et utilise le service d’hébergement Artifactory.
  2. Sonatype (créateurs de Nexus) est un partenaire de mes employeurs
  3. Je suis membre de Apache Software Foundation (créateurs d’Archivia)

Je ne recommande pas quel MRM vous utilisez. Mais en tant que committer de Maven et membre de PMC, je recommande fortement d’ utiliser un MRM.

Amazon S3 est la meilleure solution: http://www.stackoverflow.com/questions/850570/maven-s3-wagon-provider , car:

  1. Aucune procédure d’installation
  2. Hébergé par Amazon, hautement disponible
  3. Entièrement pris en charge par Maven à travers quelques wagons (voir le lien ci-dessus)

Vous pouvez également trouver cet article utile: http://www.yegor256.com/2015/09/07/maven-repository-amazon-s3.html

Depuis que j’ai posté cette question, j’ai découvert JitPack , ce qui rend extrêmement facile la création de pensions publiques (gratuites) et privées (économiques) directement à partir de Github.

Vous pouvez placer un nom d’utilisateur / mot de passe sur différents serveurs sur votre serveur avec archiva ou nexus. Vous pouvez également gérer qui peut déployer dans ces repos.

Ceux-ci peuvent être ajoutés à votre fichier settings.xml afin que vous n’ayez pas à vous connecter à chaque fois.