java构建工具-maven的复习笔记【适用于复习或者初步了解】

2024-09-01 12:28

本文主要是介绍java构建工具-maven的复习笔记【适用于复习或者初步了解】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    🤹‍♀️潜意识起点:个人主页

🎙座右铭:得之坦然,失之淡然。

💎擅长领域:前端

是的,我需要您的:

🧡点赞❤️关注💙收藏💛

是我持续下去的动力!

 


目录

一. 什么是maven

1.1 个人了解

1.2 官方理解

二 . maven的作用

2.1 maven的作用示意图

2.2 maven的具体作用

三 .导入maven项目

3.1 操作步骤

 四.依赖管理

4.1 pos.xml中依赖的配置

4.2 代码

4.3 依赖总结

五. 依赖传递 

5.1 依赖传递基本概念

5.2 排除依赖

六 .依赖范围

6.1依赖范围的基本概念

七. 依赖的生命周期

 7.1 依赖生命周期基本介绍

7.2 重要的几个生命周期

7.3 依赖生命周期在idea中的位置

八 .总结 

一. 什么是maven

1.1 个人了解

像vue的框架一样,html该放什么地方,vue组件该放什么地方,什么地方配置,什么地方去连接。

1.2 官方理解

Maven是一个项目管理和理解工具,它基于项目对象模型(POM)的概念,可以管理项目的构建、报告和文档。Maven通过提供一个清晰的路径来使用最佳实践,从而提高理解力和生产力。Maven的核心特性包括构建、依赖管理、文档创建、站点发布和分发发布等。


Maven的官方网站提供了丰富的文档和指南,包括快速入门指南、生命周期介绍、POM(项目对象模型)的详细介绍、配置文件说明、插件开发和使用、以及如何为项目创建站点等。这些资源可以帮助用户更好地理解和使用Maven。


Maven的安装和配置相对简单,用户可以从官方网站下载最新版本的Maven,并按照提供的指南进行安装和配置。Maven的默认配置通常足够使用,但用户也可以根据自己的需要进行自定义配置。


Maven的依赖管理功能非常强大,它允许用户通过POM文件声明项目依赖,Maven会自动处理依赖的下载和版本管理。Maven的依赖范围和传递性是其核心特性之一,用户可以通过配置文件来管理依赖的范围和传递性,确保项目构建的正确性和一致性。


Maven的插件系统为用户提供了极大的灵活性,用户可以利用现有的插件来扩展Maven的功能,或者开发自定义插件来满足特定的需求。Maven的插件可以用于编译项目、运行测试、打包、部署等各个阶段。


Maven的生命周期是其构建过程中的核心概念,包括默认生命周期、清理生命周期和站点生命周期。用户可以通过生命周期来控制项目的构建过程,Maven提供了丰富的生命周期阶段,每个阶段都可以执行特定的任务。


Maven的多模块管理功能允许用户将大型项目分解为多个子模块,每个模块都有自己的POM文件,这样可以提高项目的组织性和可维护性。


Maven的仓库管理功能包括本地仓库和远程仓库的管理。用户可以通过配置文件来管理仓库的设置,包括仓库的地址、代理设置、镜像和快照版本等。


Maven的社区非常活跃,用户可以通过社区获得支持和帮助,也可以参与到Maven的开发和贡献中。

二 . maven的作用

2.1 maven的作用示意图

 

2.2 maven的具体作用

 

三 .导入maven项目

3.1 操作步骤

 如图所示简单明了。只要导入pom.xml就可以导入整个项目了。

 四.依赖管理

4.1 pos.xml中依赖的配置

4.2 代码

 注意要放在dependencies的标签中,具体的依赖去依赖库中找市面上有很多依赖库。

 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>

4.3 依赖总结

五. 依赖传递 

5.1 依赖传递基本概念

依赖是有传递性的  

5.2 排除依赖

 

有传递性的,坐标中的依赖可以传递 

六 .依赖范围

6.1依赖范围的基本概念

七. 依赖的生命周期

 7.1 依赖生命周期基本介绍

7.2 重要的几个生命周期

7.3 依赖生命周期在idea中的位置

八 .总结

Apache Maven 是一个广泛使用的项目管理和理解工具,它主要用于 Java 项目的构建、依赖管理和文档生成。以下是对 Maven 的一些关键点总结:


  1. 项目对象模型(POM): Maven 使用一个名为 POM(Project Object Model)的 XML 文件来描述项目的构建过程、依赖、插件和其他配置信息。

  2. 依赖管理: Maven 提供了强大的依赖管理功能,能够自动处理项目依赖的解析和下载,确保项目的构建环境一致性。

  3. 构建生命周期: Maven 定义了一系列的构建生命周期阶段,如编译、测试、打包、部署等,每个阶段都可以执行特定的任务。

  4. 插件和目标: Maven 插件可以扩展 Maven 的功能,每个插件可以定义多个目标(goal),这些目标可以在构建生命周期中执行。

  5. 继承和聚合: Maven 支持项目继承和多模块项目聚合,允许在父 POM 中定义公共配置,子模块可以继承这些配置。

  6. 跨平台: Maven 可以在多种操作系统上运行,包括 Windows、Linux 和 macOS。

  7. 标准目录结构: Maven 推荐使用标准的目录结构,如 src/main/java 用于源代码,src/test/java 用于测试代码。

  8. 可移植性: Maven 项目是高度可移植的,可以在不同的开发环境中轻松迁移。

  9. 社区支持: Maven 有一个活跃的社区,提供了大量的插件、工具和文档资源。

  10. 中央仓库: Maven 中央仓库包含了大量的开源项目和库,方便开发者使用。

  11. 版本控制: Maven 支持 SNAPSHOT 和 RELEASE 版本,方便进行版本管理。

  12. 发布和部署: 使用 Maven 可以方便地将项目发布到远程仓库或部署到服务器。

  13. IDE 集成: Maven 与大多数流行的 Java IDE(如 IntelliJ IDEA、Eclipse)集成,提高了开发效率。

  14. 命令行工具: Maven 提供了一个命令行工具,可以通过命令行执行构建和依赖管理任务。

  15. 最佳实践: Maven 鼓励使用最佳实践,如使用标准生命周期、目录结构和命名约定。

Maven 的这些特性使其成为 Java 开发中不可或缺的工具之一,它不仅提高了开发效率,还确保了项目的可维护性和可扩展性。


 

    🤹‍♀️潜意识起点:个人主页

🎙座右铭:得之坦然,失之淡然。

💎擅长领域:前端

是的,我需要您的:

🧡点赞❤️关注💙收藏💛

是我持续下去的动力!

 

这篇关于java构建工具-maven的复习笔记【适用于复习或者初步了解】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1126928

相关文章

Java中ArrayList和LinkedList有什么区别举例详解

《Java中ArrayList和LinkedList有什么区别举例详解》:本文主要介绍Java中ArrayList和LinkedList区别的相关资料,包括数据结构特性、核心操作性能、内存与GC影... 目录一、底层数据结构二、核心操作性能对比三、内存与 GC 影响四、扩容机制五、线程安全与并发方案六、工程

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

Spring AI集成DeepSeek的详细步骤

《SpringAI集成DeepSeek的详细步骤》DeepSeek作为一款卓越的国产AI模型,越来越多的公司考虑在自己的应用中集成,对于Java应用来说,我们可以借助SpringAI集成DeepSe... 目录DeepSeek 介绍Spring AI 是什么?1、环境准备2、构建项目2.1、pom依赖2.2

Spring Cloud LoadBalancer 负载均衡详解

《SpringCloudLoadBalancer负载均衡详解》本文介绍了如何在SpringCloud中使用SpringCloudLoadBalancer实现客户端负载均衡,并详细讲解了轮询策略和... 目录1. 在 idea 上运行多个服务2. 问题引入3. 负载均衡4. Spring Cloud Load

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

在 Spring Boot 中使用 @Autowired和 @Bean注解的示例详解

《在SpringBoot中使用@Autowired和@Bean注解的示例详解》本文通过一个示例演示了如何在SpringBoot中使用@Autowired和@Bean注解进行依赖注入和Bean... 目录在 Spring Boot 中使用 @Autowired 和 @Bean 注解示例背景1. 定义 Stud

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2