首页 > 其他分享 >Maven的概述

Maven的概述

时间:2023-05-24 10:56:02浏览次数:43  
标签:依赖 Java jar Maven 12 概述 RELEASE

Maven的概述

@

目录
Java 项目开发过程中,构建指的是使用『原材料生产产品』的过程。

  • 原材料
    • Java 源代码
    • 基于 HTML 的 Thymeleaf 文件
    • 图片
    • 配置文件
    • ……
  • 产品
    • 一个可以在服务器上运行的项目

构建过程包含的主要的环节:

  • 清理:删除上一次构建的结果,为下一次构建做好准备
  • 编译:Java 源程序编译成 *.class 字节码文件
  • 测试:运行提前准备好的测试程序
  • 报告:针对刚才测试的结果生成一个全面的信息
  • 打包
    • Java工程:jar包
    • Web工程:war包
  • 安装:把一个 Maven 工程经过打包操作生成的 jar 包或 war 包存入Maven的本地仓库
  • 部署
    • 部署 jar 包:把一个 jar 包部署到 Nexus 私服服务器上
    • 部署 war 包:借助相关 Maven 插件(例如 cargo),将 war 包部署到 Tomcat 服务器上

Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。

在这里插入图片描述

2. 依赖

如果 A 工程里面用到了 B 工程的类、接口、配置文件等等这样的资源,那么我们就可以说 A 依赖 B。例如:

  • junit-4.12 依赖 hamcrest-core-1.3
  • thymeleaf-3.0.12.RELEASE 依赖 ognl-3.1.26
    • ognl-3.1.26 依赖 javassist-3.20.0-GA
  • thymeleaf-3.0.12.RELEASE 依赖 attoparser-2.0.5.RELEASE
  • thymeleaf-3.0.12.RELEASE 依赖 unbescape-1.1.6.RELEASE
  • thymeleaf-3.0.12.RELEASE 依赖 slf4j-api-1.7.26

依赖管理中要解决的具体问题:

  • jar 包的下载:使用 Maven 之后,jar 包会从规范的远程仓库下载到本地
  • jar 包之间的依赖:通过依赖的传递性自动完成
  • jar 包之间的冲突:通过对依赖的配置进行调整,让某些jar包不会被导入

3. Maven 的工作机制

在这里插入图片描述

3. 最后:感谢

该文章参考了,如下博主的分享。我们再此,真诚的感谢博主的技术的热情的分享。

⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐感谢如下博主的分享 ⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐

【1】:兵器|代码重工

在这里插入图片描述

标签:依赖,Java,jar,Maven,12,概述,RELEASE
From: https://www.cnblogs.com/TheMagicalRainbowSea/p/17427364.html

相关文章

  • Shell - Shell01 概述
    Shell是什么Shell解析器有哪些Shell脚本的格式Shell脚本的执行   Shell是什么Shell是一个命令解释器,接收应用程序/用户命令去调用操作系统内核。Shell是一个功能强大的编程语言,易编写、易调试、灵活性强。 Shell解析器有哪些[root@node~]#cat/etc/shel......
  • 单片机概述
    单片机简介1.为什么叫51单片机51单片机是指80年代Intel开发的8051单片机内核的统称,就是因为这个“8051”有个51,所以凡是与“8051”内核一样的单片机都统称为51系列单片机。51单片机是对兼容英特尔8051指令系统的单片机的统称。51单片机广泛应用于家用电器、汽车、工业测控、通信......
  • Maven安装与配置
    Maven安装与配置1.下载Mavenhttps://maven.apache.org/download.cgi这里面的第二个:2.配置Maven环境变量此电脑->右键属性->下面点击高级系统设置->点击环境变量设置->用户变量中新建:变量名:M2_HOME 变量值:Maven所在目录(比如:E:\apache-maven-3.9.2-bin\apache-maven-......
  • ReID专栏(一) 任务与数据集概述
    前言 本专栏针对Closed-world的ReID任务,首先介绍本任务的目标与主要数据集,包括行人重识别、跨模态行人重识别与车辆重识别。然后从三类表征学习的角度解读相关论文,表征学习是本任务的核心,大量重识别工作都致力于提高表征学习的性能。再次,我们介绍了度量学习和排序优化的发展。最......
  • Maven报错 解决方案。ERROR: No goals have been specified for this build. You must
    转:https://www.codeleading.com/article/61821466327/报错:[ERROR]Nogoalshavebeenspecifiedforthisbuild.Youmustspecifyavalidlifecyclephaseoragoalintheformat<plugin-prefix>:<goal>or<plugin-group-id>:<plugin-artifact-......
  • 动力节点Docker深入浅出(一)Docker概述
    分享一下最近正在b站上看动力节点的docker课程,整理了相关学习笔记,会按照学习进度慢慢更新的,加油本套课程适合零基础、技术提升乃至所有编程语言开发者;课程对应包含含基础篇、提升篇与高级篇,共计十二大章节。本课程主要学习知识点:“7个深度/3个全面”;针对Docker的知识体系,无......
  • JVM中GC Roots及引用类型概述
    JVM中可以用作GCRoots的对象包括以下几种:活动线程(Activethreads):正在执行的线程被视为GCRoots,因为它们持有当前执行状态的信息。静态变量(Staticvariables):被声明为静态的变量属于类,因此它们会一直存在于内存中。JNI引用(JNIreferences):JavaNativeInterface(JNI)引用是在......
  • 记一次IDEA运行maven命令异常退出,Process finished with exit code -1073741819 (0xC
    系统是基于ARM64的win11,问题根源也不是网传的金山毒霸,出问题的也不是我。起因,我一学弟想在他的微软surfacepro上装IDEA学java,然后给他整了个i586版本的jdk(也就是32位jdk).后面他学习的时候用到tomcat,然后一运行项目啊,发现tomcat是64位,32位的jdk运行不起来,然后把jdk换成了64......
  • idea中jdk11用maven编译失败 Fatal error compiling: tools.jar not found: XX\Java
    ideamaven编译需要用到jdk的lib包里面的tools.jar文件,但是jdk1.8之后就没有tools.jar了。我这里用的是graalvm的jdk11,编译一直报错,网上也查不到。解决办法: 根据对应路径创建一个lib包,并把jdk1.8的lib下面的tools.jar复制一个放到这个包下面,让这个路径有这个包就行了。我......
  • Weakly Supervised Temporal Action Localization via Representative Snippet Knowle
    0.前言相关资料:arxivgithub论文解读论文基本信息:领域:弱监督时序动作定位发表时间:CVPR2022(2022.3.14)1.针对的问题许多现有的方法试图生成伪标签来弥补分类和定位之间的差异,但通常只使用有限的上下文信息,即每个片段内的信息,来生成伪标签。2.主......