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 :

Utiliser Maven sans la gestion des dépendances?


Sujet :

Maven Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 28
    Par défaut Utiliser Maven sans la gestion des dépendances?
    Bonjour,

    Je viens d'arriver sur un projet web (Eclipse WTP, J2EE 1.4, Spring, Tomcat) assez volumineux, et je souhaite utiliser maven2 pour automatiser la récupération des données depuis CVS, compilation, création de .war.
    Cependant, le projet étant deja créé je ne souhaite pas refaire la partie gestion des dépendance :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <dependencies>
        <dependency>
        ...
        <dependency>
    <dependencies>
    Y-a-t-il un moyen pour donner a maven au lieu de ceci un répertoire ou se trouve les jar à utiliser (WebContent/WEB-INF/lib).

    J'ai essayer quelque chose comme :
    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    <project>
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.xxx</groupId>
      <artifactId>myProject</artifactId>
      <packaging>war</packaging>
      <version>1.0-SNAPSHOT</version>
      <name>Project</name>
     
      <build>
        <directory>${basedir}/../../BuildMaven</directory>
     
      	<plugins>
      		<plugin>
            	<artifactId>maven-compiler-plugin</artifactId>
            	<configuration>
    	          <compilerVersion>1.4</compilerVersion>
    	          <source>1.4</source>
    	          <target>1.4</target>
    	          <debug>true</debug>
    	          <showDeprecation>false</showDeprecation>
    	          <showWarnings>false</showWarnings>
    	          <optimize>false</optimize>
            	</configuration>
          	</plugin>
     
              <plugin>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                  <downloadSources>true</downloadSources>
                </configuration>
              </plugin>
     
              <plugin>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                  <warSourceDirectory>WebContent</warSourceDirectory>
                </configuration>
              </plugin>      
        </plugins>    
     
     
        <resources>
          <resource>
          	<directory>/</directory>
            <includes>
            	<include>${basedir}/WebContent/WEB-INF/lib/*.jar</include>
            </includes>
          </resource>
        </resources>
        
        <sourceDirectory>${basedir}/src</sourceDirectory>
      </build>
     
    </project>
    En essayant de jouer avec les resources je n'ai pas obtenu de résultat à chaque fois maven ne trouve pas les lib et n'arrive pas à compiler.

    Merci pour votre aide (si c'est possible).

  2. #2
    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 : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

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

    A ma connaissance, ce n'est pas possible (ou alors faut bidouilles quelque chose, mais je ne vois pas).
    Il te faut donc définir chacune des dépendances dans ton pom.xml. Tu peux toutefois utiliser le scope system, qui t'autorise (avec l'attribut systemPath) à définir l'endroit où se trouve la dépendance sur ton disque. Quelque chose du goût de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        <dependency>
            ...
            <scope>system</scope>
            <systemPath>C:\chemin\maLib.jar</systemPath>
        </dependency>
    A noter que toutefois le scope system est fortement découragé, et ne devrait être utilisé qu'en cas de nécessité absolue...

    Tout ça pour te dire que, selon mon point de vue, il te faut passer par la fastidieuse tâche de l'écriture de toutes les dépendances dans ton pom.xml...
    C'est certes fastidieux, mais je pense qu'une fois ceci accomplit, ce sera bien plus facile de maintenir les nombreuses dépendances de ton projet...
    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

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 28
    Par défaut
    Merci pour la réponse. En effet, après plusieurs recherches, je n'ai pas trouvé mieux que ça.
    D'un coté c'est bien car cela incite les développeurs à avoir une bonne gestion des dépendances. De l'autre je trouve ça plus problématique. En effet, je souhaite chez nous que les équipes productions et déploiement utilise Maven, cela serait bien plus pratique car nous avons des paramètres bien particulier en fonction de nos environnement (dev, recette, production). Ainsi grâce à des profils ils pourraient eux même générer les War.

    Le problème est : s'ils doivent effectuer un paramétrage rebutant (s'installer les librairies manquantes dans leurs repository, ou bien pointer vers mon proxy de repository), ils n'accepterons jamais.
    D'où l'intérêt pour moi de ne plus avoir à gérer les dépendances après le stade de développement.
    Le scope systemPath est une alternative qui fonctionne pour moi, bien qu'un peu lourde.

  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 : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Citation Envoyé par MLK jr Voir le message
    Le problème est : s'ils doivent effectuer un paramétrage rebutant (s'installer les librairies manquantes dans leurs repository, ou bien pointer vers mon proxy de repository), ils n'accepterons jamais.
    Euh je comprends pas trop le problème là !
    Pourquoi auraient-ils à installer eux mêmes les librairies manquantes ? C'est Maven qui se charge de ça, c'est son avantage !
    La seule chose à leur "imposer" éventuellement, si tu as effectivement paramétrer un proxy de repository, c'est un settings.xml particulier.
    Mais bon, ça veut dire pour eux de lancer la commande "mvn -s c:\un.chemin\settings.xml ..."

    Donc pas franchement très embêtant !
    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
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 28
    Par défaut
    Je convient que ce n'est pas forcemment très compliqué. Mais dans les grosses boites tout devient plus complexe!

    Le problème est que le proxy maven ne sert que pour notre petite équipe de dev et n'est pas installé sur un server avec une bonne disponibilité et que notre équipe de production ne se trouve pas sur le même réseau que nous ce qui de toute façon rend problèmatique le partage d'accès à un server (ouverture de firewall, etc...)

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    734
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 734
    Par défaut
    Citation Envoyé par MLK jr Voir le message
    Je convient que ce n'est pas forcemment très compliqué. Mais dans les grosses boites tout devient plus complexe!

    Le problème est que le proxy maven ne sert que pour notre petite équipe de dev et n'est pas installé sur un server avec une bonne disponibilité et que notre équipe de production ne se trouve pas sur le même réseau que nous ce qui de toute façon rend problèmatique le partage d'accès à un server (ouverture de firewall, etc...)
    et livrer une copie du repository maven en même temps que le reste est il envisageable?

  7. #7
    Membre chevronné

    Inscrit en
    Septembre 2006
    Messages
    466
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 466
    Par défaut
    Citation Envoyé par Tarul Voir le message
    et livrer une copie du repository maven en même temps que le reste est il envisageable?
    Pour information, le plugin dependency offre des fonctionnalités intéressantes pour gérer cela.

    Rémy

Discussions similaires

  1. Erreur Gestion des dépendances MAVEN
    Par edorisse dans le forum Maven
    Réponses: 3
    Dernier message: 14/02/2011, 10h47
  2. Réponses: 2
    Dernier message: 30/07/2010, 10h25
  3. Gestion des dépendances Maven 2
    Par zarba dans le forum Maven
    Réponses: 4
    Dernier message: 17/11/2009, 18h18
  4. [Maven2] et gestions des dépendances
    Par Palmer dans le forum Maven
    Réponses: 3
    Dernier message: 23/02/2007, 10h48
  5. gestion des dépendances
    Par zola dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 07/05/2006, 13h34

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