IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Maven Java Discussion :

Comment est-ce que maven fait pour savoir si une version est plus récente ?


Sujet :

Maven Java

  1. #1
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut Comment est-ce que maven fait pour savoir si une version est plus récente ?
    Si je nomme les versions 1.2, 1.3, etc, je devine comment maven sait que la version 1.3 et plus récente que la version 1.2.

    Mais si je nommais mes versions 95, 98, 2000, XP, Vista, comment est-ce que maven ferait pour savoir que Vista est la plus récente ?
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  2. #2
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : août 2004
    Messages : 8 765
    Points : 12 925
    Points
    12 925
    Par défaut
    Bah chais pas, y'a le tonton développeur qui lui a appris non (genre fichier de conf ou ce genre de choses)?

    [Edit] Ah ouais y'a aussi le fait que le kernel windows a un numéro de version un poil plus compréhensible: http://fr.wikipedia.org/wiki/Noyau_windows_NT http://windowsitpro.com/article/arti...indows-xp.html[/Edit]
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  3. #3
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    La question ne porte pas sur windows, mais sur maven.

    Est-ce que je peux nommer mes versions par des noms de ce que je veux, et éviter les noms de version prétendus compréhensibles, et qui ne sont en fait compris que par le développeur seul ?

    (prenons, par exemple, les numéros de version de java... là, même les développeurs n'y comprennent rien... alors ? )
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    août 2006
    Messages
    3 272
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2006
    Messages : 3 272
    Points : 4 109
    Points
    4 109
    Par défaut
    On parle de versions de builds, donc je ne trouve pas cela très grave que le numéro soit incompréhensible. Ce n'est pas un numéro de produit fini.

  5. #5
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Je ne demande pas si c'est grave ou pas grave, je demande comment maven fait !

    Imaginons que je VEUILLE donner comme numéro de version Les sanglots longs de l'automne bercent mon coeur d'une langueur monotone, puis, numéroter la version suivante par Tout suffocant et blême quand sonne l'heure je me souviens des jours anciens et je pleure, et JE VEUX que Maven, par un système de configuration quelquonque, sache se débrouiller.

    Est-ce possible même si c'est complètement stupide ?
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  6. #6
    Expert confirmé
    Profil pro
    Inscrit en
    août 2006
    Messages
    3 272
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2006
    Messages : 3 272
    Points : 4 109
    Points
    4 109
    Par défaut
    Regarde du côté de : http://mojo.codehaus.org/buildnumber-maven-plugin/, si ça correspond à ton besoin.

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2007
    Messages : 25 481
    Points : 48 794
    Points
    48 794
    Par défaut
    D'abord, il faut savoir que l'ordre dans les versions n'a de l'importance que si des projet marquent dans leur dépendances qu'ils veulent ta librairie en version "N ou supérieur" (voir les version range dans maven). Sinon, c'est la conscience du programmeur qui lui dit quelle version est la plus récente et dont il a besoin.

    Maintenant, pour que maven s'en sorte dans le recherche automatique de "la version la plus récente", il faut respecter la règle de numérotation suivante.

    <major version>.<minor version>.<incremental version>-<qualifier>

    dans leques major, minor et incremental peuvent être vu comme des nombres entier, que maven se contente alors de trier par ordre numérique.
    le -SNAPSHOT a une signification particulière

  8. #8
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Ah OK, oui, je vois... j'ai l'impression qu'on est un peu contraint par le système à maven.

    En fait, mon besoin est que je n'aime pas beaucoup le système des versions en major/minor. Je préfère un système par date, qui me permet de comparer les versions de plusieurs projets ; par exemple je sais qu'un projet de version 2008 est plus récent qu'un projet de version 2007, quelques soient les projets en cause, et je trouve que cette information est beaucoup plus intéressante dans un contexte multiprojets.

    Je travaille comme ça depuis quelques temps, et même si je n'ai pas eu de problèmes, je m'étais dit que je risquais d'en avoir un jour, si je devais spécifier d'utiliser la dernière version, et non plus une version déterminée, comme je fais jusqu'à présent.
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  9. #9
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2007
    Messages : 25 481
    Points : 48 794
    Points
    48 794
    Par défaut
    tu n'est pas obligé de préciser les minor version. Tu peux te contente de l'année en major associée au buildnumber qui lui serai incrémental. D'ailleurs, c'est ce que fait maven avec les paquets SNAPSHOTS. Quand t'as un snapshot en dépendance, ca pointe toujours vers la denière version. Quand tu fait un mvn install d'un paquet snapshot, maven remplace le snaphot par un buildnumber formé de la date et de l'heure.

  10. #10
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Oui, c'est un peu l'idée que j'ai eu, la nuit portant conseil ; il faut associer mode par date et mode par major/minor ; et, si en plus, maven fait pareil...

    Jusqu'à présent, lorsque j'applique le principe version par date, je nomme par exemple la version du 1er juillet 2005 01072005. Cela n'irait pas pour le classement maven. Par contre, si je fais 2005.7.1, alors c'est bon ! (il me semble) Moi je vois la date, Maven voit comme major 2005, moyen 7, minor 1 et, sauf erreur, un jour de la date 2006 sera toujours vu supérieur à un jour de 2005, un jour du mois de juillet d'une année sera toujours supérieur à un jour de mai de la même année, etc.

    Merveilleux, je place résolu. Comme quoi il est toujours bon de poser des questions stupides pour réfléchir.

    Merci.
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  11. #11
    Membre confirmé

    Inscrit en
    septembre 2006
    Messages
    466
    Détails du profil
    Informations forums :
    Inscription : septembre 2006
    Messages : 466
    Points : 515
    Points
    515
    Par défaut
    Bonjour,

    Pour information, quelques liens sur le sujet :



    Rémy

  12. #12
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Trés interessant, merci.

    Donc, si je fais 2009.10.1 (année 2009, octobre, le 1), maven l'interprète comme major 2009, minor 10, build 1, et c'est bon au niveau de l'ordre des versions, et c'est même compatible Mercury et OSGI.

    Pour Maven je pourrais même rajouter un qualifier (je croyais que SNAPSHOT était le seul possible), mais alors je perds la compatibilité avec Mercury et OSGI à ce que j'ai compris.

    Je pourrais en me débrouillant avec une comparaisonMethod faire ce que je veux, mais l'équipe Maven semble s'exciter sur le sujet, et proposer quelques puissantes fonctionalités excitantes pour la version 3.

    Et peut être devra-t-on ménager une compatibilité spéciale pour jigsaw ?... on verra.
    Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
    Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.

  13. #13
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2007
    Messages : 25 481
    Points : 48 794
    Points
    48 794
    Par défaut
    les qualifier servent à distinguer des artifact différents. Exemple : -source pour le jar des sources, -test pour les unit test réutilisables, -doc pour l'archive de javadoc, etc

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Test pour savoir si une référence est active
    Par jmde dans le forum VBA Access
    Réponses: 10
    Dernier message: 19/05/2013, 22h58
  2. Réponses: 4
    Dernier message: 26/08/2008, 18h11
  3. Methode pour savoir si une CheckBox est cochée
    Par poulette3000 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 13/07/2007, 11h54
  4. Réponses: 2
    Dernier message: 29/06/2006, 17h33
  5. Comment savoir qu'une fonction est standard ?
    Par D[r]eadLock dans le forum C
    Réponses: 5
    Dernier message: 24/03/2003, 15h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo