maven 学习笔记

       在一个项目中引用另一项目时,要先将另一个项目发布到本地的资源仓库,然后在本项目的POM文件中进行dependency进行依赖配置,并在另一个项目中进行mvn install 命令进行jar包发布


pom.xml:(从struts-core的jar包中的maven中找到)
①.<modelVersion>:maven版本。
②.<groupId>:项目的包名。
③.<artifactId>:模块名。
④.<version>:0.0.1SNAPSHOT快照版本
在cmd中运行项目:(先进入项目所存放的目录)
①mvn compile 编译主程序源代码,不会编译test目录的源代码。第一次运行时,会下载相关的依赖包,可能会比较费时
②mvn test 运行应用程序中的单元测试
会生成target文件夹,主程序编译的字节码文件在classes下面,测试程序放在test-classes下,surefire-reports文件夹下面存放是的所生成的测试报告
③mvn package 会在target目录下生成一个maven01-model-0.0.1SNAPSHPT.jar


clean
compile(编译:在项目根目录生成target文件夹包含class文件)
test
package(打包:在target中生成jar包)
install (安装:部署在本地mvn仓库中)



1、什么是maven?
   maven是基于项目对象模型(POM),可以通过一小段的描述信息来管理项目的搭建、报告和文档的软件管理工具。
2、maven的安装
   bin:包含mvn运行的脚本
   boot:包含类加载器的框架
   conf:包含配置文件
   lib:包含所需的类库
 
  
 
  
常用构建命令:
mvn compile 编译
test 测试
package 打包
clean 删除target
install 安装jar包到本地仓库

自动创建目录骨架:
1.archetype:generate 按照提示进行
2.archetype:generate -DgroupId=组织名, 公司网址的反写+项目名
-DartifactId=项目名-模块名
-Dversion=版本号
-Dpackage=代码所存在的包

Maven中的坐标与仓库:
"构件" 通过 "坐标" 作为其唯一的标识 
"仓库": 
本地仓库和远程仓库
"镜像仓库"
"更改仓库位置"

Maven的生命周期和插件
完整的项目构建过程包括:
清理, 编译,测试, 打包, 集成测试, 验证, 部署 
Maven生命周期:
clean 清理项目
default 构建项目(最核心) 
site 生成项目站点

pom.xml用于管理项目依赖和构建过程

依赖范围
依赖传递
依赖冲突 
1. 短路优先
2. 先声明先优先 
聚合和继承

   
   

项目管理利器(Maven)——Pom.xml解析 <name>项目的描述名</name> <url>项目的地址</url> <description>项目描述</description> <developers>开发人员信息</developers> <licenses>许可证信息</licenses> <!-- 依赖列表 --> <dependencies> <!-- 依赖项 --> <dependency> <groupId></groupId> <artifactId></artifactId> <version></version> <type></type> <scope>依赖的范围</scope> <optional>设置依赖是否可选,默认是false</optional> <!-- 排除依赖传递列表 --> <exclusions> <exclusion></exclusion> </exclusions> </dependency> </dependencies> <!-- 依赖的管理,一般定义在父模块中,由子模块去继承 --> <dependencyManagement> <dependencies> <dependency></dependency> </dependencies> </dependencyManagement> <!-- 对构建行为提供相应的支持 --> <build> <!-- 插件列表 --> <plugins> <plugin> <!-- 指定坐标 --> <groupId></groupId> <artifactId></artifactId> <version></version> </plugin> </plugins> </build> <!-- 一般在子模块中指定所继承的父模块 --> <parent></parent> <!-- 模块列表 --> <modules> <module></module> </modules>





1、Maven的下载和配置:MAVEN_HOME=Maven的安装路径;在Path中指定Maven的bin目录路径,便于使用Maven;<br> 2、Maven的骨架目录:src/main/java/作为主代码目录;sr/test/java作为测试代码存放;pom.xml用于管理项目依赖和构建过程。 3、常用的Maven命令:achetype.generate自动创建目录骨架 4、仓库和坐标 5、在elipse安装和创建maven项目 6、生命周期,pom.xml以及依赖、聚合、继承 7、Maven插件使用:jetty和tomat等插件。 对于多个项目一起编译,这种方式叫做聚合。 还以上面的ABC三个项目作为例子说明; 三者设定了传递依赖关系,并且经过配置,但是此时不想一个一个的由高到低的编译/打包/安装,此时可以在A的pom.xml文件的根目录中加入如下元素标签,只需要对A进行打包安装即可实现对B和C的打包和安装,这种一同编译安装的方式,就叫做聚合。 …… <modules> <module>../C</module> <module>../B</module> <module>../A</module> </modules> ……

     
     



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值