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

多个maven项目(模块)之间如何依赖:p->q
1.p项目install到本地仓库
2.q项目依赖:
<!--本项目依赖于HelloWorld2项目 -->
<dependency>
<groupId>org.myy.maven</groupId>
<artifactId>HelloWorld2</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>


在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

猜你喜欢

转载自www.cnblogs.com/mayouyou/p/13179631.html