zoukankan      html  css  js  c++  java
  • maven常见命令&&依赖&&maven生命周期


    maven常见命令(第一次执行命令时,因为需要下载执行该命令的基础环境,所以会从中央仓库下载该环境到本地仓库)
    编译:(Maven基础组件,基础Jar)
    mvn compile --只编译main目录中的Java文件
    mvn test 测试
    mvn package 打成jar/war
    mvn install 将开发的模块放入本地仓库,供其他模块使用(放入的位置是通过gav决定的)
    mvn clean 删除target目录(删除编译文件的目录)
    运行mvn命令,必须在pom.xml文件所在目录


    依赖
    A.jar->B.jar

    <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.0</version>
    <scope>test</scope>
    </dependency>

    <scope>...</scope>
    1.依赖的范围、依赖的有效性
    compile(默认) test provided

    2.依赖排除
    A.jar->B.jar
    当我们通过maven引入A.jar时,会自动给引入B.jar
    A.jar(x.java,y.java,z.java) B.jar(p.java,c.java,i.java)
    A.jar和B.jar之间依赖的本质:z.java->c.java
    <!--排除依赖beans -->
    <exclusions>
    <exclusion>
    <groupId>org.springframework</groupId>
    <artifactId>spring-beans</artifactId>
    </exclusion>
    </exclusions>
    依赖:
    commons-fileupload.jar commons-io.jar:虽然我们实际开发时,认为二者rjar必须关联,但是maven可能不这么认为。

    3.依赖的传递性:
    A->B->C 要使A->C当且仅当B依赖于C的范围是compile

    HelloWorldTime->HelloWorld2->junit

    多个maven项目(模块)之间如何依赖:p->q
    i.p项目install到本地仓库
    ii.q项目依赖:
    <!--本项目依赖于HelloWorld2项目 -->
    <dependency>
    <groupId>org.myy.maven</groupId>
    <artifactId>HelloWorld2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    </dependency>
    4.依赖原则:为了防止冲突
    a.路径最短优先原则
    b.路径长度相同
    i.在同一个pom.xml文件中有两个相同的依赖(覆盖):后面声明的依赖会覆盖前面声明的依赖(严禁使用本情况,严禁在同一个pom中声明两个版本不同的依赖)
    ii.如果是不同的pom.xml中有两个相同的依赖(优先):则先声明的依赖,会覆盖后声明的依赖

    (JDK只能够识别source folder中的源码)

    在Eclipse中创建maven工程:
    1.配置maven:
    配置maven版本
    配置本地仓库 设置setting.xml

    在eclipse中编写玩pom.xml依赖后,需要maven-update proje

    package
    resources
    compile
    testResources
    testCompile
    test

    maven生命周期:
    生命周期和构建的关系
    生命周期中的a b c d e
    当我们执行c命令,则实际执行的是a b c


    生命周期包含的阶段:3个阶段
    clean lifecycle 清理
    pre-clean clean post-clean
    default lifecycle 默认(常用)


    site lifecycle 站点
    pre-site site post-site site-deploy
    再次强调:在pom.xml中增加完依赖后,需要maven->update project

    统一项目的jdk
    1.build path:删除旧版本,增加新版本
    2.右键项目-属性-Project Factors -java version 该版本(之前存在要改的版本)

    通过maven统一jdk版本:
    <profiles>
    <profile>
    <id>jdk-11</id>
    <activation>
    <activeByDefault>true</activeByDefault>
    <jdk>11</jdk>
    </activation>
    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
    </properties>
    </profile>
    </profiles>


    maven统一jar版本
    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!-- 统一版本 -->
    <myy.world.junit.version>4.0</myy.world.junit.version>
    </properties>
    <dependencies>
    <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>${myy.world.junit.version}</version>
    <scope>test</scope>
    </dependency>
    </dependencies>

  • 相关阅读:
    绝对定位和相对定位的内幕
    水平居中和垂直居中
    玩转html5<canvas>画图
    基本排序算法
    很好用的canvas
    IE浏览器存在的setAttribute bug
    js 高程 函数节流 throttle() 分析与优化
    js apply()、call() 使用参考
    js 高程 22.1.4 函数绑定 bind() 封装分析
    事件处理程序中 this 的指向
  • 原文地址:https://www.cnblogs.com/mayouyou/p/13179631.html
Copyright © 2011-2022 走看看