博客
关于我
Maven
阅读量:719 次
发布时间:2019-03-21

本文共 1284 字,大约阅读时间需要 4 分钟。

仓库

Maven仓库基于简单文件系统,用于集中式管理Java开发工具包(API组件)。每个项目都有独特的坐标,可以通过这些坐标查找相应的API组件。在查找时,Maven首先会在本地仓库搜索,如果找不到则会访问远程仓库获取组件。

远程仓库

远程仓库由官方提供或公司内部提供的私服构成,主要用于获取依赖项。

本地仓库

本地仓库位于本地文件系统,用于存储从远程仓库克隆下来的组件及临时构建文件。

项目类型

POM工程

POM(Project Object Model)是逻辑工程,通常用于父工程或聚合工程中,主要用于版本控制,应避免在其中写代码。

JAR工程

JAR(Java Archive)将源代码打包成标准的可执行JAR文件。

WAR工程

WAR(Web Application Archive)将源代码打包成用于部署的Web应用文件。

项目结构

项目结构通常如下:

ProjectName/├── src/             源码目录│   ├── main/       主程序源码│   │   ├── java/    Java源码│   │   └── resources/ 配置文件│   └── test/        测试源码├── pom.xml          Maven工程核心配置文件└── target/         编译目录

项目关系

Maven将每个项目视为对象,项目间通过依赖关系连接。

依赖

依赖传递

当一个项目依赖于另一个项目时,该依赖的依赖也会被当前项目继承。

最短路径优先

在处理依赖冲突时,Maven会选择路径最短的依赖使用。

声明顺序优先

如果有多个符合条件的依赖,顺序声明的依赖优先被选择。

依赖排除

用于阻止不必要的传递依赖。

依赖范围

  • compile:默认范围,依赖在编译和运行时起作用。
  • provided:依赖只在编译和测试时起作用。
  • runtime:依赖只在运行时起作用。
  • system:使用本地依赖而不是仓库中的。
  • test:依赖只在测试时起作用。
  • import:子项目依赖必须使用当前项目指定的版本。

聚合

Maven支持多个项目通过POM聚合,生成一个包含所有项目的单个JAR/WAR文件。

POM文件

POM文件通常如下结构:

4.0.0
cn.superstallion
MM
1.0-SNAPSHOT
8
8

Maven命令

命令 说明
clean 清除之前编译的文件,准备新编译。
compile 将源文件编译成字节码。
test 执行测试,调用Junit等测试框架。
package 将构建文件打包为JAR或WAR文件。
install 将构建文件安装到本地仓库。
deploy 将构建文件部署到私服。

转载地址:http://iogrz.baihongyu.com/

你可能感兴趣的文章
Powerdesigner显示表的comment和列的comment的方法
查看>>
PowerDesigner最基础的使用方法入门学习
查看>>
PowerDesigner版本控制器设置权限
查看>>
PowerDesigner生成数据模型并导出报告
查看>>
QGIS中导入dwg文件并使用GetWKT插件获取绘制元素WKT字符串以及QuickWKT插件实现WKT显示在图层
查看>>
PowerDesigner逆向工程从SqlServer数据库生成PDM(图文教程)
查看>>
PowerEdge T630服务器安装机器学习环境(Ubuntu18.04、Nvidia 1080Ti驱动、CUDA及CUDNN安装)
查看>>
PowerPC-object与elf中的符号引用
查看>>
QFileSystemModel
查看>>
Powershell DSC 5.0 - 参数,证书加密账号,以及安装顺序
查看>>
PowerShell 批量签入SharePoint Document Library中的文件
查看>>
Powershell 自定义对象小技巧
查看>>
pytorch从预训练权重加载完全相同的层
查看>>
PowerShell~发布你的mvc网站
查看>>
PowerShell使用详解
查看>>
Powershell制作Windows安装U盘
查看>>
powershell命令
查看>>
Powershell如何查看本地公网IP
查看>>
pytorch从csv加载自定义数据模板
查看>>
powershell对txt文件的服务器进行ping操作
查看>>