Maven简单项目及命令使用

项目结构如下

HelloWorld.java

package pak1;

public class HelloWorld {
    public String sayHello(){
        return "Hello World!";
    }
}

HelloWorldTest.java

package pak2;

import pak1.HelloWorld;
import org.junit.Assert;
import org.junit.Test;

public class HelloWorldTest {
    @Test
    public void testHello(){
        Assert.assertEquals("Hello World!", new HelloWorld().sayHello());
    }
}

pom.xml

<?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>com.yanguobin</groupId>
    <artifactId>maven1</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.1</version>
        </dependency>
    </dependencies>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>3.1.0</version>
                </plugin>
                <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>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>3.2.2</version>
                </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>
            </plugins>
        </pluginManagement>
    </build>
</project>

<modelVersion>4.0.0</modelVersion>指maven版本,4.0.0是固定的。

groupId的值就是项目的包名,可以与包名不一致

artifactId的值是模块名,可以与模块名不一致

其中,有了这些Maven的这些plugin,在compile, test时就不会报错"不再支持源选项 1.5。请使用 1.6 或更高版本"

mvn compile编译

在项目目录下执行mvn compile时会在项目目录下生成target目录,如下

其中,classes目录下存放的就是生成的字节码文件

mvn test测试

在项目目录下执行mvn test时会在target目录下生成其他目录,如下

其中,surefire-reports目录下存放的就是生成的测试报告

mvn package打包 

在项目目录下执行mvn package时会在target目录下生成.jar包,如下

mvn clean删除target

在项目目录下执行mvn clean时删除target目录及其目录下的所有内容

mvn install 安装jar包到本地仓库中

假设已有项目maven1,新建了项目maven2,而项目maven2用到了项目maven1中的类,此时就需要使用mvn install将项目maven2的jar包安装到本地仓库中,然后就可以在项目maven2的pom.xml文件中引入maven1的pom文件的依赖坐标,然后项目maven2就可以引用项目maven1的文件了。

 

posted @ 2019-11-29 17:56  请叫我小老弟  阅读(358)  评论(0)    收藏  举报