2009-02-16 4 views
5

J'ai un projet que je distribue en envoyant des paquets volumineux. J'aimerais savoir s'il existe une façon conviviale d'utiliser Maven pour distribuer les mises à jour du projet? J'ai besoin de quelque chose comme ce qui est fait pour la mise à jour des logiciels comme Firefox ou Acrobat Reader. Vérifiez un référentiel, avertissez l'utilisateur d'une mise à jour, téléchargez et reconfigurez. Tout cela dans une interface simple et conviviale. Les projets Java open source alternatifs sont les bienvenus.Utilisation de Maven pour la distribution de projet

Répondre

1

Si votre projet est une bibliothèque: Vous devez configurer un public maven repository (ou utiliser Maven Central). De cette façon, vos utilisateurs peuvent récupérer la dernière version de votre bibliothèque en mettant à jour leur POM.

Si votre projet est autre chose, vous pouvez utiliser un référentiel Maven pour conserver les paquets dans un endroit facile à déployer pour vous (et à télécharger facilement pour tout le monde). Ensuite, vous devrez pointer votre logiciel sur le site et télécharger le fichier "maven-metadata.xml" de temps en temps. Maven va créer et gérer ce fichier pour vous quand vous dites "mvn deploy". Le fichier contient les derniers numéros de version.

Tout ce que vous avez à faire est de télécharger ce petit fichier et l'examiner. S'il existe une nouvelle version, ouvrez une boîte de dialogue pour votre utilisateur afin qu'il décide de le télécharger. Je suggère d'offrir "Télécharger uniquement" et "Télécharger et mettre à jour" en tant qu'options distinctes car les utilisateurs aiment télécharger du temps en arrière-plan et ensuite installer entre deux projets. Ils n'aiment pas les dialogues lancinants ("Nouvelle version disponible, téléchargez et ruinez votre journée maintenant" ... "J'ai demandé il y a cinq minutes, téléchargez maintenant!" ... "Téléchargement quand même. Sélection d'autres logiciels importants dont vous avez besoin Achat maintenant Passez une bonne journée! ";)).

0

Je ne pense pas que maven ait un moyen standard de fournir cette fonctionnalité. Maven a des notions de "release" et de "deploy", mais celles-ci ne s'appliquent pas au scénario que vous décrivez.

Questions connexes