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

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Débuter avec Maven et le langage Java
Un tutoriel de Gokan Ekinci

Le , par Gugelhupf

7PARTAGES

6  0 
Bonjour,

J'ai le plaisir de vous présenter un tutoriel pour bien débuter avec Maven 3 et Java

Maven est un outil créé par Apache, il permet de faciliter la gestion de son projet Java. Maven est parfois qualifié de « Dependency Management Tool » (Outil de Gestion de Dépendance en français), c'est un outil qui est très utilisé dans l'univers Java, il est aussi très apprécié des professionnels.
Et vous ?

Que pensez-vous de ce tutoriel ?
Utilisez-vous un autre outil pour builder et gérer vos dépendances ?

Retrouver les autres tutoriels Java sur : http://java.developpez.com/cours/

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de MarMoff
Candidat au Club https://www.developpez.com
Le 08/06/2017 à 12:56
Bonjour
Dans ce paragraphe la modification du programme App.java nécessaire pour utiliser l'extension Jsoup n'est pas présentée.

Voici une version de App.java qui fonctionne :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package fr.marcel.MavenTest;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

/**
 * Bonjour à tous
 *
 */
public class App 
{
	public static void main( String[] args )
	{
		String texteHtml =  "<h1>Bonjour à tous !</h1>";
		Document doc = Jsoup.parse(texteHtml);
		System.out.println(doc.outerHtml());
		System.out.println();
		System.out.println(doc.body().text());
	}
}
La méthode Jsoup.parse(texteHtml) crée un document au format HTML à partir de la chaîne de caractères qui lui est passé en paramètre.

La méthode doc.outerHtml() retourne une chaîne de caractères contenant le document HTML créé par la méthode Jsoup.parse(texteHtml).

La méthode doc.body().text() retourne une chaîne de caractères contenant le corps du document sans les balises, donc ici : Bonjour à tous !.

Voici le résultat de l'exécution de ce programme :

bash-4.3$ java -jar simple-1.0-SNAPSHOT-jar-with-dependencies.jar
‹html›
 ‹head›‹/head›
 ‹body›
  ‹h1›Bonjour à tous !‹/h1›
 ‹/body›
‹/html›
Bonjour à tous !
bash-4.3$

Cordialement
1  0 
Avatar de Gugelhupf
Modérateur https://www.developpez.com
Le 11/06/2017 à 17:06
Merci pour ton retour @MarMoff. Un petit oubli. J'ai ajouté l'exemple de code Jsoup au tutoriel.
0  0 
Avatar de olivier252
Membre averti https://www.developpez.com
Le 31/05/2019 à 17:40
Tous mes remerciements pour ce tutoriel très bien rédigé et clair pour un débutant comme moi.
Bravo à son rédacteur

Olivier
0  0 
Avatar de plieuseParis
Candidat au Club https://www.developpez.com
Le 31/10/2019 à 16:24
Bonjour,
Merci pour ce tutoriel. Je rencontre une difficulté à l'étape où on ajoute une dépendance vers Jsoup:
- mon code java:
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package myPackage; 
import org.jsoup.Jsoup; 
import org.jsoup.nodes.Document; 
 
/** 
 * Hello world! 
 * 
 */ 
public class App  
{ 
    public static void main( String[] args ) 
    { 
        String htmlText = "<h1>Hello World!<h1>"; 
        Document doc = Jsoup.parse( htmlText ); 
		System.out.println( doc.outerHtml() ); 
		System.out.println(); 
		System.out.println( doc.body().text() );     
	} 
}
- mon pom.xml:
Code XML : Sélectionner tout
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<?xml version="1.0" encoding="UTF-8"?> 
  
<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/xsd/maven-4.0.0.xsd"> 
  <modelVersion>4.0.0</modelVersion> 
  
  <groupId>myPackage</groupId> 
  <artifactId>MyFirstSeleniumProject</artifactId> 
  <version>0.1</version> 
  
  <name>MyFirstSeleniumProject</name> 
  <!-- FIXME change it to the project's website --> 
  <url>http://maven.apache.org</url> 
  
  <properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <maven.compiler.source>1.7</maven.compiler.source> 
    <maven.compiler.target>1.7</maven.compiler.target> 
  </properties> 
  
  <dependencies> 
    <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.11</version> 
      <scope>test</scope> 
    </dependency> 
	<dependency> 
	    <groupId>org.jsoup</groupId> 
	    <artifactId>jsoup</artifactId> 
	    <version>1.8.3</version> 
	</dependency> 
  </dependencies> 
  <build> 
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> 
      <plugins> 
        <!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle --> 
        <plugin> 
          <artifactId>maven-clean-plugin</artifactId> 
          <version>3.1.0</version> 
        </plugin> 
        <!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging --> 
        <plugin> 
          <artifactId>maven-resources-plugin</artifactId> 
          <version>3.0.2</version> 
        </plugin> 
        <plugin> 
          <artifactId>maven-compiler-plugin</artifactId> 
          <version>3.8.0</version> 
        </plugin> 
        <plugin> 
          <artifactId>maven-surefire-plugin</artifactId> 
          <version>2.22.1</version> 
        </plugin> 
		<plugin> 
            <groupId>org.apache.maven.plugins</groupId> 
            <artifactId>maven-assembly-plugin</artifactId> 
            <version>2.6</version> 
            <configuration> 
                <archive> 
	                <manifest> 
	                    <mainClass>myPackage.App</mainClass> 
	                </manifest> 
                </archive> 
                <descriptorRefs> 
                    <descriptorRef>jar-with-dependencies</descriptorRef> 
                </descriptorRefs> 
			</configuration> 
			<executions> 
                <execution> 
                    <id>make-assembly</id> 
                    <phase>package</phase> 
                    <goals> 
                        <goal>single</goal> 
                    </goals> 
                </execution> 
            </executions>			 
        </plugin> 
        <plugin> 
          <artifactId>maven-install-plugin</artifactId> 
          <version>2.5.2</version> 
        </plugin> 
        <plugin> 
          <artifactId>maven-deploy-plugin</artifactId> 
          <version>2.8.2</version> 
        </plugin> 
        <!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle --> 
        <plugin> 
          <artifactId>maven-site-plugin</artifactId> 
          <version>3.7.1</version> 
        </plugin> 
        <plugin> 
          <artifactId>maven-project-info-reports-plugin</artifactId> 
          <version>3.0.0</version> 
        </plugin> 
      </plugins> 
    </pluginManagement> 
  </build> 
</project>
- mon output console:
Visiblement, il ne calcule pas le plugin maven-assembly-plugin puisque celui-ci n'apparaît pas dans l'output de la console.
Je n'ai plus d'idées... Si quelqu'un peut m'aider, ça serait sympa. Merci.
Marie
0  0 
Avatar de plieuseParis
Candidat au Club https://www.developpez.com
Le 04/11/2019 à 11:09
Bonjour,
ça marche en saisissant :
Code : Sélectionner tout
mvn compile assembly:single
J'ai trouvé l'idée sur le lien suivant :
https://stackoverflow.com/questions/42536239/javafx-maven-assembly-warning-cannot-include-project-artifact-it-doesnt-h
Marie
0  0 
Avatar de Snaval
Membre du Club https://www.developpez.com
Le 14/02/2021 à 21:09
Bonjour
J'ai rempli correctement, il me semble les différentes valeurs des Variables d'environnement, à savoir:
  • pour JAVA_HOME valeur de la variable: C:\Program Files (x86)\Java\jdk1.7.0_75

  • pour Path valeur de la variable: ;C:\Program Files\Apache Software Foundation\apache-maven-3.6.3\bin\

En ouvrant la ligne de commande je suis sur: C:\Users\mon_nom\Downloads\apache-maven-3-6-3\bin
Sur la commande: mvn -v il est répondu: commande non reconnue à l'interne ou à l'externe.
Pour info: je dispose de Java complet avec JDK et JRE.
Où est l'erreur?
Quelle est la solution?
Merci pour vos réponses
0  0 
Avatar de Snaval
Membre du Club https://www.developpez.com
Le 16/02/2021 à 19:14
Bonjour,
Ceci est une suite et rectification de mon post précédent du 14/02/2021, les données suivantes de mon ordinateur sont:
  • JAVA_HOME= C:\Program Files\Zulu\zulu-11\bin
  • Path= C:\Users\Solonavalona\Downloads\apache-maven-3.6.3\bin

Pour vérifier si maven est bien installé je fais la commande suivante:
C:\Users\Solonavalona\Downloads\apache-maven-3.6.3\bin>mvn -v
Un avertissement d'erreur apparaît comme suit:

The JAVA_HOME environment variable is not defined correctly.
This environment is needed to run this program.
NB: JAVA_HOME should point to a JDK not a JRE.

Question: où est l'erreur? (Il me semble que j'ai bien installé Java: javac et java existent bien dans le bin de zulu-11)
Merci pour les réponses.
0  0 
Avatar de Snaval
Membre du Club https://www.developpez.com
Le 22/02/2021 à 7:43
Bonjour,
C'est encore une suite de mes précédents posts ci-dessus des 14 et 16/02/2021 (qui n'ont pas reçu de réponses)
D'après l'avertissement d'erreur ci-dessus je n'ai pas introduit les données correctes pour JAVA_HOME.
Voici les données que j'ai introduites sur mon ordi:
  • Pour Java: JAVA_HOME=C:\Program Files\Zulu\zulu-11\jdk11.0.2\bin;

Cette donnée a été vérifiée pour Java qui fonctionne normalement.
C'est donc le JAVA_HOME pour apache-maven qui n'est pas introduit; en effet après vérification: apache-maven ne fonctionne pas encore.
Question: Comment introduire ce JAVA_HOME pour apache-maven?
Merci pour les réponses.
0  0 
Avatar de Snaval
Membre du Club https://www.developpez.com
Le 22/02/2021 à 16:43
Bonjour,
C'est encore une suite et clarification de mes post précédents (car je n'ai pas réussi l'installation correcte).
Après consultation des FAQ et document officiel de Apache Maven j'ai introduit les données suivantes pour Java et Apache (c'est donc à vérifier car elles ne marchent pas pour Apache).
Pour Java:
  • JAVA_HOME= C:\Program Files\Zulu\zulu-11\jdk11.0.2
  • Path=%JAVA_HOME%\bin;C:\Program Files\Zulu\zulu-11\bin

Pour Apache Maven:
  • MVN_HOME= C:\Users\Solonavalona\Downloads\apache-maven-3.6.3
  • Path= %MVN_HOME%\bin; C:\Users\Solonavalona\Downloads\apache-maven-3.6.3\bin

Après contrôle sur Ligne de commande Apache Maven ne marche pas et répond par me demander de vérifier Java (qui pourtant marche):
C:\Users\Solonavalona\Downloads\apache-maven-3.6.3\bin mvn -v
Merci pour indiquer l'erreur.
0  0 
Avatar de Snaval
Membre du Club https://www.developpez.com
Le 24/02/2021 à 13:34
Bonjour,
Voici une clarification de mon message précédent et une information complémentaire sur la boîte de dialogue que j'ai reçue après exécution de la ligne de commande: mvn -v

J'ajoute que mon Java fonctionne correctement et qu'il est muni de JDK complet (ce qui m'étonne sur la réponse disant qu'il faut pointer sur JDK et non sur JRE).
Merci pour indiquer l'erreur et donner la solution.
0  0