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 );
}
}
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>
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
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] ------------------------------------------------------------------------
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.
java -cp /work/MvnJava/target/MvnJava-1.0-SNAPSHOT.jar com.demo.App
#résultat
Hello World!
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