[JAVA]

MavenProject ┣━src ┃ ┣━main ┃ ┃ ┣━java ┃ ┃ ┗━resource ┃ ┗━test ┃ ┣━java ┃ ┗━resource ┗━pom.xml

Maven vous permet de créer facilement des projets Java et Scala et de construire Jar à l'aide de commandes. L'avantage de Maven est qu'il gère diverses bibliothèques et ressources qui dépendent de la construction du projet. Structure de projet Maven Une structure de projet Maven typique est la suivante. Création de projet Maven Localement, vous pouvez créer les répertoires requis par les commandes Maven. Par exemple, créez un projet Java Mvn.

cd /work
mvn archetype:generate \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DinteractiveMode=false \
  -DgroupId=com.demo \
  -DartifactId=MvnJava

Le répertoire créé est le suivant. MvnJava ┣━src ┃ ┣━main ┃ ┃ ┣━java ┃ ┃ ┃ ┗━main ┃ ┃ ┃   ┗━java ┃ ┃ ┃    ┗━com ┃ ┃ ┃     ┗━domo ┃ ┃ ┃      ┗━App.java ┃ ┃ ┗━resource ┃ ┗━test ┃ ┣━java ┃ ┃ ┗━java ┃ ┃   ┗━com ┃ ┃    ┗━domo ┃ ┃     ┗━AppText.java ┃ ┗━resource ┗━pom.xml Le contenu d'App.java est le suivant

package com.demo;
/**
 * Hello world!
 *
 */
public class App
{
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
    }
}

Le contenu d'AppTest.java est le suivant

package com.demo;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
/**
 * Unit test for simple App.
 */
public class AppTest
    extends TestCase
{
    /**
     * Create the test case
     *
     * @param testName name of the test case
     */
    public AppTest( String testName )
    {
        super( testName );
    }
    /**
     * @return the suite of tests being tested
     */
    public static Test suite()
    {
        return new TestSuite( AppTest.class );
    }
    /**
     * Rigourous Test :-)
     */
    public void testApp()
    {
        assertTrue( true );
    }
}

Modifier pom.xml

pom est une abréviation de «modèle d'objet de projet» et est un modèle d'objet pour gérer diverses informations d'un projet. Dans pom.xml, les paramètres du projet sont décrits sous forme de balises xml. Ajoutez maintenant une bibliothèque qui dépend du test pour faire le test JUnit.

<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>com.demo</groupId>
  <artifactId>MvnJava</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>MvnJava</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
</project>

Compilation du projet Maven

Compilez le projet Maven.

cd /work/MvnJava
mvn compile
#L'achèvement est terminé lorsque le résultat ci-dessous est affiché
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

Le répertoire cible est créé.

Jar, qui dépend du test JUnit, est situé à l'emplacement suivant.

ls /Users/username/.m2/repository/junit/junit/3.8.1/
junit-3.8.1.jar	

Implémentation de JUnit

mvn test
#résultat
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.demo.AppTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 sec

Results :

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 19.083 s
[INFO] Finished at: 2019-03-21T16:59:50+09:00
[INFO] ------------------------------------------------------------------------

Construire un pot

mvn package
#résultat
[INFO] Building jar: /work/MvnJava/target/MvnJava-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 14.768 s
[INFO] Finished at: 2019-03-21T17:12:01+09:00
[INFO] ------------------------------------------------------------------------

MvnJava-1.0-SNAPSHOT.jar est un pot qui peut être construit.

Exécuter Jar

java -cp /work/MvnJava/target/MvnJava-1.0-SNAPSHOT.jar com.demo.App 
#résultat
Hello World!

Commandes fréquemment utilisées par Maven

                              
mvn -v: Vérifiez la version Maven. Incluez des informations sur le JDK que vous utilisez.
mvn compile: Compilez les éléments dans Maven. Un répertoire cible est créé directement sous le répertoire Maven. Le répertoire des classes où les classes sont placées y est créé.
mvn test: Exécutez le test de Maven. Pour ce faire, une classe de test et des résultats de test sont créés dans le répertoire cible.
mvn package: Compilez le projet Maven et générez-le dans le répertoire cible.
mvn clean: Supprimez le répertoire cible.
mvn install: Installez dans un référentiel local.

Recommended Posts