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 :

Bonnes pratiques ?


Sujet :

Maven Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Points : 8
    Points
    8
    Par défaut Bonnes pratiques ?
    Bonjour à tous,

    Tout d'abord merci de prendre le temps de me lire.

    Je viens vous voir pour vous demander quelles sont les bonnes pratiques dans le cadre d'une génération d'un projet eclipse via le maven-eclipse-plugin (mvn eclipse:eclipse).

    Lorsque je package mon appli web (mvn package), les jars nécessaires à la web app sont bien copiés dans le WEB-INF/lib du répertoire target. Le war est correct et peut être déployée.

    Malheureusement, lorsque je genere mon projet pour eclipse pour la phase de développement (mvn eclipse:eclipse), les jars ne sont pas ajoutés dans mon dossier webapp/WEB-INF/lib.

    Je suis obligé :
    • soit de les copier manuellement du WEB-INF/lib du répertoire target vers mon dossier WEB-INF/lib du dossier webapp des sources.
    • soit d'utiliser la commande mvn war:inplace (bien qu'elle copie aussi les .class, et cette étape, je veux la laisser à eclipse)


    En gros, j'arrive bien a maveniser mon projet, mais j'ai du mal a voir une bonne intégration "automatique" avec eclipse. J'aimerais ne pas avoir a faire d'étapes manuelles dans mon IDE et utiliser seulement la tache mvn eclipse:eclipse pour avoir un projet viable directement.

    Si je n'ai pas été clair, n'hésitez pas à demander des eclaircissements.

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    L'idée de maven est de séparer les dépendances (jars) de tes sources.
    Elles n'ont donc à priori rien à faire dans ton web-inf/lib.
    De plus, eclipse:eclipse permet de générer les descripteurs eclipse de telle sorte qu'Eclipse pointe vers les dépendances de ton repository.
    Là encore ce n'est pas fait pour les copier ailleurs.

    Pourquoi as-tu vraiment besoin de les copier dans web-inf/lib ?
    Ton war généré dans ton dossier targer ne te suffit pas ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    Tout d'abord merci pour ta réponse.

    En fait, maven me génère un projet de type Java Project. Seulement , c'est un projet de type Web (ou Dynamic Web Project) que j'aimerais avoir car actuellement les jars sont référencés dans le classpath de l'application mais ne sont pas présentes dans le WEB-INF/lib.

    Seul hic, je peux pas donner une nature "Dynamic Web Project" car c'est un projet de type GWT (1.6.4). Le plugin gwt pour eclipse, qui permet de développer du GWT en "hosted mode", a besoin des librairies dans le WEB-INF/lib.

    Du coup, lorsque je fais un mvn eclipse:eclipse pour générer mon projet, j'ai bien les references des jars dans eclipse mais des warnings me disant que les jars referencés ne sont pas dans le WEB-INF/lib.

    J'aurais voulu qu'après un mvn eclipse:eclipse, les jars soient dans le WEB-INF/lib des sources et pas référencés uniquement comme étant dans le classpath de build de l'application.

    Si je ne suis pas bien clair, hésitez pas.

    Ps : j'utilise le maven-gwt-plugin pour compiler mon projet

    Le vrai problème c'est si on bosse a 10, chacun doit faire les modifs dans son IDE après un mvn eclipse:eclipse. Je voudrais que ce soit automatisé par maven.

    En dehors même du contexte GWT, lorsque vous generez une webapp jEE avec mvn eclipse:eclipse, je suppose que vous travaillez avec un war exploded en phase de développement pour avoir les modifs a chaud. Si vous travaillez avec un war exploded, vous devez bien copier les libs gérés par maven dans le WEB-INF/lib des sources? Ou alors peut être bossez vous avec le target exploded généré par maven après un mvn package?

    Bref j'ai besoin de savoir comment vous gérez tout ca dans le monde de l'entreprise parce que la liason maven <-> dév sous eclipse / gestion des libs / war exploded me parait encore un peu abstraite

  4. #4
    Membre régulier Avatar de jeb001
    Profil pro
    Inscrit en
    Août 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2005
    Messages : 212
    Points : 76
    Points
    76
    Par défaut
    Bonjour,

    je suis également à la recherche des bonnes pratiques... et je cherche un moyen de déployer en 'direct' ma webapp maven dans mon serveur tomcat eclipse.
    Je voudrai aussi que mes développeurs n'aient pas à générer le WAR à chaque fois qu'ils veulent tester leur dev.. quelle est la pratique ?

    merci

  5. #5
    Membre actif

    Inscrit en
    Août 2002
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2002
    Messages : 302
    Points : 285
    Points
    285
    Par défaut
    Bonjour,
    Désolé pour la réponse tardive,
    en fait pour que les libraires soit copiées sous web-inf/lib il faut configurer le eclipse maven plugin pour que le projet ait comme facet wtp.
    fais une recherche dans ce sens tu trouvera pas mal de trucs.
    Bonne chance

  6. #6
    Membre régulier Avatar de jeb001
    Profil pro
    Inscrit en
    Août 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2005
    Messages : 212
    Points : 76
    Points
    76
    Par défaut
    Apres quelques reherches, j'ai trouvé différentes solutions pour développer sous eclipse un projet WEB maven... mais rien de très stable à mon gout.

    Soit, il faut lancer la tache eclipse -wtpversion.. qui recopie les librairies maven dans les lib de la webapp... mais il faut le faire à chaque ajout d'une dépendance dans le pom.. et aller modifier la conf de deploiement dans eclipse... je trouve peu satisfaisant.

    Je suis en train d'explorer l'extension WTP du plugin M2.. qui me semble être exactement ce que je cherche.. sauf que mon environnement de developpement est devenu très instable...
    Je suis étonné qu'il n'y ai aucune pratique bien intégrée dans eclipse.. ?

  7. #7
    Membre actif Avatar de Jacobian
    Inscrit en
    Février 2008
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 425
    Points : 245
    Points
    245
    Par défaut
    je vois pas trop vos besoin les deux !! est ce que vous pouvez reformuler vos souci ?

  8. #8
    Membre régulier Avatar de jeb001
    Profil pro
    Inscrit en
    Août 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2005
    Messages : 212
    Points : 76
    Points
    76
    Par défaut
    Alors pour ma part, je voudrai savoir comment fonts les développeurs pour développer confortablement sous eclipse des appli WEB en utilisant maven...

    J'ai essayé plusieurs méthodes, mais ça reste systématiquement moins confortable avec maven que sans. (en ce qui concerne une appli web)

  9. #9
    Membre actif Avatar de Jacobian
    Inscrit en
    Février 2008
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 425
    Points : 245
    Points
    245
    Par défaut
    si vous êtes débutant avec maven sous eclipse je te conseil d'installer le plugin maven2 pour eclipse et la ta déja l'ensemble préparamétré:
    - il te propose un enssmble de projet simple ou modulaire (spring, struts, hibernate, jsf,...) avec maven2

  10. #10
    Membre actif Avatar de Jacobian
    Inscrit en
    Février 2008
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 425
    Points : 245
    Points
    245
    Par défaut
    - si ta des questions n'hésiter pas

Discussions similaires

  1. Bonnes pratiques de protections individuelles
    Par Community Management dans le forum Sécurité
    Réponses: 23
    Dernier message: 11/06/2024, 12h23
  2. Réponses: 7
    Dernier message: 02/11/2005, 16h30
  3. [Bonne pratique]Stratégie d'allocation
    Par jowo dans le forum C
    Réponses: 1
    Dernier message: 05/10/2005, 15h47
  4. [FOREIGN K] Valeur de champ = nom de table. Bonne pratique ?
    Par Seb des Monts dans le forum Langage SQL
    Réponses: 9
    Dernier message: 17/05/2005, 11h56

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