Java学习之Maven使用

Java学习之Maven

0x00 前言

学习并mark过来一些知识点做留存。

0x01 Maven使用

  1. compiled (默认)

    对主程序是否有效:有效

    对测试程序是否有效:有效

    是否参与打包:参与

  1. test

    对主程序是否有效:无效

    对测试程序是否有效:有效

    是否参与打包:不参与

  1. provided

    对主程序是否有效:有效

    对测试程序是否有效:有效

    是否参与打包:不参与

测试总结:

  1. 默认引入 的 jar 包 ------- compile 【默认范围 可以不写】(编译、测试、运行 都有效 )

  2. servlet-api 、 jsp-api ------- provided (编译、测试 有效, 运行时无效 防止和 tomcat 下 jar 冲突)

  3. jdbc 驱动 jar 包 ---- runtime (测试、运行 有效 )

  4. junit ----- test (测试有效)

依赖范围由强到弱的顺序是: compile>provided>runtime>test

需要设置编译版本为 1.8,这里需要使用 maven 的插件来设置:
在 pom.xml 中加入:

<build>
    <plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target>
    <encoding>UTF-8</encoding>
        </configuration></plugin> 

聚合

主要是聚合,在web中很多站点可以看到反编译后,都是只看到文件夹里只有少量代码,而部分核心代码在一些jar包里面。其实就是用到了maven给模块化开发了。例如下图

maven中嵌套了很多子maven工程。

继承

  <parent>
        <artifactId></artifactId>
        <groupId></groupId>
        <version></version>
        <!--以当前项目为基准的父工程pom.xml文件的相对路径-->
        <relativePath></relativePath>
    </parent>

常用命令

执行与构建过程(编译,测试,打包)相关的命令必须进入pom.xml所在位置执行

mvn clean:清理(打包好的程序放在生成的名为target的文件中,清理即删除文件中打包好的程序)

mvn compile:编译主程序

mvn test-compile:编译测试程序

mvn test:执行测试

mvn package:打包

mvn install:安装至本地仓库

mvn site:生成站点

posted @ 2021-05-17 21:56  nice_0e3  阅读(159)  评论(0编辑  收藏  举报