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 :

[M2-Site] Regrouper les stats de tous les sous modules


Sujet :

Maven Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut [M2-Site] Regrouper les stats de tous les sous modules
    Bonjour à tous,

    Supposons cette architecture :

    mon-projet
    +-- Sous-projet 1
    +-- Sous-projet 2
    +-- Sous-projet 3

    Chaque sous projet à son propre pom.xml, et bien entendu, "mon-projet" aggrège tous les sous-projets (ils sont considérés comme module).

    Si je lance la commande mvn site, je vais avoir un site pour mon-projet, et des sous-sites pour chaque sous-projet.

    Admettons que le plugin surefire-report soit utilisé (il affiche le résultat des exécutions des tests unitaires). Le problème, c'est que je suis obligé d'aller sur chaque site de chaque sous-projet pour avoir une vision de ce qui a réussi ou raté dans l'exécution des tests.

    Moi, j'aimerais que l'ensemble des stats de Surefire (ou n'importe quel plugin) puisse être regroupé au niveau du projet parent. En gros, que les résultats de Surefire des 3 sous-projets soient regroupés sur une même page.

    Comment est-ce possible ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  2. #2
    Membre expérimenté Avatar de dvicente72
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 213
    Par défaut
    ben là tu as le choix :

    soit tu veux utiliser une solution purement Maven alors tu as:

    -dashboard-maven-plugin : développé par mes soins, je me fais juste un peu de "pub" mais tu dois te faire un avis par toi-même

    - Qalab : dans le même esprit

    dans un optique "Entreprise" avec plusieurs projets (multi-modules ou pas ), il y a une solution externe (le site web restituant l'aggrégation de données se fait dans un site web externe ) :

    - Sonar : le plus prometteur surtout avec la version 0.3 qui devrait sortir dans un futur assez proche.

    ceci dit, rien n'empêche d'utiliser une solution "interne Maven" pour avoir les infos aggrégées au niveau du site projet et une solution de type Sonar pour aggréger tous les projets d'une entreprise

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Merci pour ta réponse, dvicente72.
    Je testerais ça dans la journée.
    (je mettrais en résolu si ça correspond bien à mes problèmes).
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  4. #4
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    dvicente72, j'ai utilisé ton plugin Dashboard, il me parait vraiment très bien !

    Merci
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  5. #5
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    dvicente72,

    J'ai 2 choses à demander à propos de ton plugin :

    1. Il ne marche pas très bien dans mon cas. Ou peut être est-ce juste un problème de configuration.
    Je suis donc dans le système de projets multi-modules. J'ai ajouté dans le pom parent les lignes suivantes (dans projet/reporting/plugins):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>dashboard-maven-plugin</artifactId>
        <version>1.0-SNAPSHOT</version>
    </plugin>
    Je lance ensuite la commande mvn clean site dashboard-report:dashboard site:deploy.
    Là, dans le répertoire où se trouve le site final, j'ai tout ce qu'il me faut, mais la page de dashboard-report du projet parent est vide (aussi bien la page "Detailed Dashboard" que la page "Summary Dashboard").
    Pourtant, les pages du dashboard-report pour chaque sous-projet (chaque module) sont bonnes et affichent les bonnes informations.

    D'après le site de ton plugin, il est dit qu'il faut faire le site en deux passes : mvn site puis mvn dashboard-report:dashboard. Je suis en train de tester en lançant ces 2 commandes, mais la création du site est très longue (je posterais un autre commentaire pour dire si ça marche comme ça).

    Edit: Oui, en effet, en exécutant les 2 commandes séparément, ça marche impeccablement.

    N'y a t'il pas moyen de faire le tout en une seule ligne de commande ?

    2. Je n'arrive pas à utiliser le plugin en configuration locale.
    Je m'explique : Dans ma mission, nous utilisons un proxy qui est en fait un mirroir de IBiblio. De ce fait, les utilisateurs n'ont pas d'accès à Internet (pour Maven). Toute librairie utilisée dans nos projets doivent se trouver dans notre proxy (qui est un répertoire partagé).
    Pour tester le plugin, je me suis mis en configuration "externe", c'est-à-dire avec accès à Internet. Et j'ai ajouté ces lignes dans mon settings.xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <pluginRepositories>
        <pluginRepository>
            <id>Codehaus Snapshots</id>
           	<url>http://snapshots.repository.codehaus.org/</url>
        </pluginRepository>
    </pluginRepositories>
    Ca marche.

    Maintenant, j'ai installé ce plugin ainsi que toutes ses dépendances dans le proxy.
    Je me remets en configuration "locale" de mon settings.xml.
    Quand je lance la création du site, il me sort cette erreur :

    The plugin 'org.apache.maven.plugins:maven-dashboard-report-plugin' does not exist or no valid version could be found

    Visiblement, il n'arrive pas à comprendre que ce plugin n'est pas un plugin de Maven, mais un plugin de Codehaus...

    Que me faut-il changer pour que ça marche en local ?

    Pour info, voici mon settings.xml en version locale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <settings>
        <!--  Path to local repository. The default location is ~/.m2/repository -->
        <localRepository>C:\m2\repository\</localRepository>
     
        <!--  Definition of mirror of Central Repository -->
        <mirrors>
            <mirror>
                <id>global-repository</id>
                <name>Global repo</name>
                <url>file://F:\...\repository</url>
                <mirrorOf>central</mirrorOf>
            </mirror>
        </mirrors>
     
        <profiles>
            <profile>
                <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
                <repositories>
                    <repository>
                        <id>global-repository</id>
                        <releases>
                            <enabled>true</enabled>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                        </snapshots>
                        <url>file://F:\...\repository</url>
                    </repository>
                </repositories>
            </profile>
        </profiles>
     
        <!-- Definition of Plugins groups created by our team. -->
        <pluginGroups>
            <pluginGroup>my.company.plugins</pluginGroup>
        </pluginGroups>
    </settings>

    Merci.
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  6. #6
    Membre expérimenté Avatar de dvicente72
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 213
    Par défaut
    N'y a t'il pas moyen de faire le tout en une seule ligne de commande ?
    malheureusement non, dans le cas d'un projet multi-modules, il faut absolument que le site soit généré complètement et ce, pour chaque module.

    Cela permet à chaque plugin "Reports" de genérér son xml ou autre fichier.

    Seulement ensuite, le mvn dashboard-report:dashboard permet de relire tous ces fichiers de manière récursif sur tous les modules et d'aggréger ces données et de generer le rapport.

    je ne pourrais malheureusement pas changer cette manière de faire.

    The plugin 'org.apache.maven.plugins:maven-dashboard-report-plugin' does not exist or no valid version could be found
    ce probleme vient sûrement du fait que j'ai changé le prefix du plugin pour "dashboard-report" quand j'ai créé le plugin au lieu de laisser le mécanisme standard.

    le problème est que lors de l'exécution, Maven a tendance à créer une entrèe dans ton repo local "maven-dashboard-report-plugin" avec divers fichiers maven-metadata-xxx.xml et c'est ça qui pose problème.

    par contre, je ne sais comment le résoudre , d'autant que je n'ai plus ce probleme lorsque je lance la commande mvn dashboard-report;dashboard.


    pour contrer ça , essaye d'effacer le repertoire maven-dashboard-report-plugin dans ${repo}\org\apache\maven\plugins

    lance la commande mvn org.codehaus.mojo:dashboard-maven-plugin:1.0-SNAPSHOT:dashboard

    et ensuite voit si mvn dashboard-report:dashboard fonctionne toujours

    il faut avouer que c'est un aspect de Maven que je maitrise mal

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

Discussions similaires

  1. [Batch] Connexion SFTP + download de tous les fichiers ET tous les répertoires
    Par gazza dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 06/03/2014, 13h45
  2. lister tous les membres de tous les groupes AD
    Par fbb53 dans le forum VBScript
    Réponses: 1
    Dernier message: 03/10/2011, 11h24
  3. Réponses: 9
    Dernier message: 16/10/2006, 16h35
  4. Réponses: 1
    Dernier message: 19/08/2006, 10h27

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