依赖|学习笔记

简介: 快速学习依赖

开发者学堂课程【项目管理工具Maven学习:依赖】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/23


maven依赖管理

Maven一个核心的特性就是依赖管理。

当处理多模块的项目(包含成百上千个模块或者子项目),模块间的依赖关系就变得非常复杂,管理也变得很困难。

针对此种情形,Maven 提供了一种高度控制的方法。

1、可传递性依赖发现

一种相当常见的情况,比如说A 依赖于其他库B。如果,另外一个项目C 想要使用A ,那么C 项目也需要使用库B。

Maven可以避免去搜索所有所需库的需求。Maven 通过读取项目文件(pom.xml),找出它们项目之间的依赖关系。

用户需要做的只是在每个项目的pom 中定义好直接的依赖关系。其他的事情Maven 会搞定。

通过可传递性的依赖,所有被包含的库的图形会快速的增长。

当有重复库时,可能出现的情形将会持续上升。Maven 提供一些功能来控制可传递的依赖的程度。

image.png

这就是已经依赖成功的样子。

2、测试testshow

在maven中想直接进行test之后再进行编译

image.png

3、依赖功能描述

●依赖调节:决定当多个手动创建的版本同时出现,那个版本将会被使用。如果两个依赖版本在依赖树里的深度是一样的时候第一个被生明的依赖将会被使用。

●依赖管理:直接的指定手动创建的某个版本被使用。例如当一个工程存在自己的依赖管理模块包含工程b,即b依赖于a,那么即可指定在b被引用时所使用的版本。

●依赖范围:包含在构建过程每个阶段的依赖。

●依赖排除:任何可传递的依赖都可以通过"exclusion" 元素被排除在外。举例说明,A 依赖B,B 依赖C,因此A 可以标记C 为"被排除的"。

●依赖可选:任何可传递的依赖可以被标记为可选的,通过使用"optional" 元素。例如:A 依赖B,B 依赖C。因此,B 可以标记C 为可选的, 这样A 就可以不再使用C

4、mavenrepostion

image.png

5、映射文件

内存映射文件,是由一个文件到一块内存的映射。Win32提供了允许应用程序把文件映射到一个进程的函数(CreateFileMapping)。内存映射文件与虚拟内存有些类似,通过内存映射文件可以保留一个地址空间的区域,同时将物理存储器提交给此区域,内存文件映射的物理存储器来自一个已经存在于磁盘上的文件,而且在对该文件进行操作之前必须首先对文件进行映射。

使用内存映射文件处理存储于磁盘上的文件时,将不必再对文件执行VO操作,使得内存映射文件在处理大数据量的文件时能起到相当重要的作用。

如果想把映射文件添加到应用程序当中去,那就需要写一个VO,在VO下面建一个“user.hbm.xml”文件。在maven里面的配置文件都会建议放到hibernate.cfg.xml文件里面。

image.png

相关文章
|
流计算 API Apache
Apache Flink 零基础入门(一):基础概念解析
本文是根据 Apache Flink 基础篇系列直播整理而成,由 Apache Flink PMC 戴资力与阿里巴巴高级产品专家陈守元共同分享。Apache Flink 系列入门教程每周更新一期,持续推送。
Apache Flink 零基础入门(一):基础概念解析
|
供应链 算法 存储
数据结构之货仓选址问题(DFS)
货仓选址问题是供应链管理中的关键挑战,直接影响物流效率和成本。本文介绍了一种基于深度优先搜索(DFS)算法的解决方案,通过计算不同位置的总距离,找到使总距离最小的最优货仓位置。此方法适用于小规模数据集,易于理解与实现,但随数据量增大,效率显著下降。示例代码展示了如何利用DFS算法计算最小总距离,并提供了完整的实现流程。
303 0
数据结构之货仓选址问题(DFS)
|
机器学习/深度学习 数据采集 人工智能
Python的应用场景
【7月更文挑战第7天】
2659 3
|
安全 网络安全 网络架构
【揭秘】大佬如何玩转内网与外联单位互访?SNAT+DNAT实战揭秘,让你的网络畅通无阻!
【8月更文挑战第19天】内网与外联单位间的访问是企业网络的关键需求。通过SNAT和DNAT技术可巧妙解决此问题。SNAT修改源IP地址,隐藏内网真实身份;DNAT改变目的IP地址,实现外部对内网服务器的访问。
445 0
|
机器学习/深度学习 人工智能 自然语言处理
医学AI智能导诊系统源码
医学AI智能导诊系统源码
343 0
|
Oracle Java 关系型数据库
【极光系列】windows安装JDK11详细教程
【极光系列】windows安装JDK11详细教程
3229 3
|
存储 Java 编译器
Java静态绑定和动态绑定
Java静态绑定和动态绑定
228 0
|
存储 SQL NoSQL
深入探究neo4j: 完全指南(安装、常用命令、错误汇总、python连接)
深入探究neo4j: 完全指南(安装、常用命令、错误汇总、python连接)
|
Android开发 开发者
Android Studio 安装APK在虚拟机时报 Installation failed due to: 'null' 解决
Android Studio 安装APK在虚拟机时报 Installation failed due to: 'null' 解决
898 0
Android Studio 安装APK在虚拟机时报 Installation failed due to: 'null' 解决