首页 > 其他分享 >Maven POM

Maven POM

时间:2024-06-20 14:21:52浏览次数:13  
标签:依赖 元素 Maven POM 添加 junit

1.POM 文件结构

在创建一个 Maven 项目时,Maven 会自动生成一个初始的 POM 文件。POM 文件结构如下:

 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.company.project</groupId>
  <artifactId>my-project</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-project</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

让我们逐一介绍这个文件中的每个部分:

modelVersion

这个元素指定了 POM 文件所使用的模型版本,目前使用的是 4.0.0。

groupId

这个元素指定了项目的组织 ID,通常是公司名称或组织名称。

artifactId

这个元素指定了项目的唯一标识符,通常是项目名称。

version

这个元素指定了项目的版本号,格式为 MAJOR.MINOR.PATCH。

dependencies

这个元素包含了该项目所依赖的其他库或框架。每个依赖都必须包含 groupId、artifactId 和 version 等元素。

build

这个元素包含了构建和打包项目时所需要的配置信息。其中,plugins 元素用于指定需要使用的插件。

2、如何添加依赖关系?

在 Maven 中,我们可以通过在 POM 文件中添加 dependencies 元素来定义项目的依赖关系。

要在 Maven 项目中添加依赖,我们需要做以下几个步骤:

  1. 找到需要添加的依赖的坐标信息,包括 groupId、artifactId 和 version 等。
  2. 在 POM 文件的 dependencies 元素中添加一个 dependency 元素,并填写坐标信息。
  3. 在命令行中运行 mvn install 命令,让 Maven 下载并安装依赖。

例如,如果我们想要在项目中添加 Spring Core 库作为依赖,我们可以在 POM 文件中添加以下内容:

 

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>5.3.0</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>5.3.0</version>
    </dependency>
</dependencies>
 

 这个例子中,我们添加了 Spring Core 和 Spring Web 两个库作为项目的依赖关系。

3、依赖范围

在 Maven 中,每个依赖都有一个默认的范围,即 compile。这意味着该依赖将被编译到项目中,并在运行时可用。除此之外,还有以下几种范围:

  • provided:表示该依赖只在编译和测试时需要,但在运行时不需要。例如,Servlet API 就是一个 provided 类型的依赖。
  • runtime:表示该依赖在运行时需要,但在编译时不需要。例如,MySQL 驱动就是一个 runtime 类型的依赖。
  • test:表示该依赖只在测试时需要,而在编译和运行时都不需要。例如,JUnit 就是一个 test 类型的依赖。
  • system:表示该依赖类似于 provided 范围,但需要指定本地文件路径。这种依赖通常不推荐使用。

要指定依赖的范围,我们可以在 dependency 元素中添加 scope 元素。例如,如果我们想要将 junit 库作为测试依赖,可以添加以下内容:

 

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>
</dependencies>


<dependency>
  <groupId>org.testng</groupId>
  <artifactId>testng</artifactId>
  <version>6.14.2</version>
  </dependency>

 

标签:依赖,元素,Maven,POM,添加,junit
From: https://www.cnblogs.com/yunlong-study/p/18258582

相关文章

  • Bat中实现git和Maven环境变量检测,拉取git代码并打包maven项目,读取子目录差异性yml文件
    场景Docker+Jenkins+Pipline实现SpringBoot项目input选择不同差异性yml文件打包、执行sh打包压缩包、使用archiveArtifacts下载制品(jar包、压缩包):https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/139748758上面实现打包后台jar包并选择不同的差异性yml文件打包成......
  • Maven笔记总结2
    6.Maven继承Maven继承是指在Maven的项目中,让一个项目从另一个项目中继承配置信息的机制。继承可以让我们在多个项目中共享同一配置信息,简化项目的管理和维护工作。Maven工程默认情况,子工程继承父工程所有jar包父工程统一管理依赖<dependencyManagement><dependenc......
  • Maven依赖版本更新踩坑
    问题描述项目xx基于SpringBoot框架,其<parent>配置如下:<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.4.2</version><relativePath/>......
  • 1950 Springboot汽修技能点评系统idea开发mysql数据库APP应用java编程计算机网页源码m
    一、源码特点 springboot汽修技能点评系统是一套完善的信息系统,结合springboot框架和bootstrap完成本系统,对理解JSPjava编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。前段主要技术bootstrap.cssjquery......
  • Maven入门教程
    Maven是一款基于Java平台的项目管理和整合工具,它极大地简化了项目的开发、构建、测试、打包和部署过程。以下是Maven的详细教程,内容涵盖了从安装到部署的各个主要步骤:一、Maven的简介Maven诞生于2001年3月左右,由JasonVanZyl创立。它将项目的开发和管理过程抽象成一个项......
  • 基于IDEA的Maven简单工程创建及结构分析
    目录一、用mvn命令创建项目二、用IDEA的方式来创建Maven项目。(1)首先在IDEA下的Maven配置要已经确保完成。(2)第二步去new一个project(创建一个新工程)(3)创建成功(一个简单的Maven项目)三、项目结构(1)分析一下刚刚我们创建的一个基础的Maven项目。(或叫"脚手架......
  • eclipse maven打包报错: 致命错误: 在类路径或引导类路径中找不到程序包 java.lang的
    还是上来帖张图:1、系统之前是运行在mac上的,打包一切正常,但是现在在win11的eclipse打包就报错了。2、致命错误:在类路径或引导类路径中找不到程序包java.lang,上面的问题应该是找不到java中的jar中的class导致。解决:1)java,运行直接提示找不到命令。发现以管理员运行是......
  • maven学习笔记
    maven学习笔记https://www.bilibili.com/video/BV1nx4y1U755/?p=3&spm_id_from=pageDriver&vd_source=d4fa9dbf28bc50f3509f7caf41d36abd1.什么是Maven1.1.Maven的概念Maven是自动化构建工具。Maven是Apache软件基金会组织维护的一款自动化构建工具,专注服务于Java平......
  • maven学习笔记(一)
    maven学习笔记(一)1.什么是Maven1.1.Maven的概念Maven是自动化构建工具。Maven是Apache软件基金会组织维护的一款自动化构建工具,专注服务于Java平台的项目构建和依赖管理。Maven这个单词的本意是:专家,内行。Maven是目前最流行的自动化构建工具,对于生产环境下多框架......
  • maven 加载不到 mybatis xml 配置文件
     <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin>......