zoukankan      html  css  js  c++  java
  • 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的文件了。

  • 相关阅读:
    155. 最小栈
    160. 相交链表
    PAT 1057 Stack
    PAT 1026 Table Tennis
    PAT 1017 Queueing at Bank
    PAT 1014 Waiting in Line
    PAT 1029 Median
    PAT 1016 Phone Bills
    PAT 1010 Radix
    PAT 1122 Hamiltonian Cycle
  • 原文地址:https://www.cnblogs.com/yanguobin/p/11959323.html
Copyright © 2011-2022 走看看