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的文件了。

  • 相关阅读:
    简单理解同步与异步
    Python3.x 安装Scrapy框架
    Python命名规范
    python 02/100例
    raw_input与input的区别
    二叉排序树
    串和广义表
    数据结构整理 第一章
    时间复杂度
    Music
  • 原文地址:https://www.cnblogs.com/yanguobin/p/11959323.html
Copyright © 2011-2022 走看看