J'ai lu quelques messages utiles ici sur SO sur les questions précédentes de maven, je suis actuellement très intéressé par l'apprentissage de maven (parce que je l'aime et parce que mon patron me le demande). Je suis en train de lire [ce] [1] livre et je travaille mon chemin à travers des exemples. C'est un livre simple, mais il a quelques erreurs à l'intérieur (trivial), mais pour un débutant comme moi peut être difficile à repérer, une fois repéré, il peut être facilement réparé. Y a-t-il un autre livre pour mieux comprendre maven de haut en bas?Question sur maven
La deuxième partie de la question est de relier un exemple dans ce livre, peut-être qu'une explication simple permettrait de résoudre mes doutes.
Voici la chose, j'ai fait un projet simple-weather
en Java qui récupère les conditions météorologiques du serveur météo yahoo, étant donné le code postal particulier, il renvoie des informations météorologiques.
Puis j'ai fait un 'simple-webapp' (avec maven ainsi que celui ci-dessus j'ai oublié de le mentionner), qui est essentiellement un projet web qui a déjà une servlet par défaut avec maven et qui ne fait rien. Je veux fusionner ces deux projets en un, j'ai donc fait un pom.xml qui a 2 modules, 1 pour récupérer des informations (projet java) et d'autres pour les afficher sur le web (application web) .
J'ai fait tout fonctionner à la fin, mais voici la chose étrange .. si je fais afficher webapp une chaîne "nom" laisse dire puis le construire indépendamment, il imprime exactement cette chaîne. Mais quand je mets la webapp dans le "parent-project" et change cette chaîne en "name1" et la construis comme sous-module de projet partent .. rien ne change ..
Donc je reviens au point, parce que simple-webapp dépend du temps simple Je ne peux plus le construire seul, alors maintenant si je veux faire des changements à la webapp .. modifier la webapp en dehors du "parent-projet" la construire là puis la coller au projet parent, puis les modifications s'appliqueront, pourquoi est-ce, pourquoi ne puis-je pas directement modifier le contenu du servlet/ou en ajouter un autre dans la webapp dans le cadre du "projet-parent"?
Merci .. Je sais que une question à long et ennuyeux, mais je suis juste essayer d'apprendre des choses et il n'y a pas de meilleur endroit pour demander que ici: D
EDIT - SONT ICI POM FICHIERS CHAQUE PROJET:
1. pom.xml simple-parent
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.sonatype.mavenbook.multi</groupId>
<artifactId>simple-parent</artifactId>
<packaging>pom</packaging>
<version>1.0</version>
<name>Multi Chapter Simple Parent Project</name>
<modules>
<module>simple-weather</module>
<module>simple-webapp</module>
</modules>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
2. pom.xml simple-weather
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.sonatype.mavenbook.multi</groupId>
<artifactId>simple-parent</artifactId>
<version>1.0</version>
</parent>
<artifactId>simple-weather</artifactId>
<packaging>jar</packaging>
<name>Multi Chapter Simple Weather API</name>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.5</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
3. simple webapp pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.sonatype.mavenbook.multi</groupId>
<artifactId>simple-parent</artifactId>
<version>1.0</version>
</parent>
<artifactId>simple-webapp</artifactId>
<packaging>war</packaging>
<name>simple-webapp Maven Webapp</name>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.sonatype.mavenbook.multi</groupId>
<artifactId>simple-weather</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
<build>
<finalName>simple-webapp</finalName>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
S'il vous plaît expliquer quel but vous exécutez et d'où. –
Je cours, maven propre puis maven installer à partir du parent pom.xml –