首页 > 其他分享 >maven的依赖传递,没有在pom文件中引入mybatis却可以用

maven的依赖传递,没有在pom文件中引入mybatis却可以用

时间:2024-11-30 17:29:06浏览次数:5  
标签:传递 依赖 pagehelper maven 引入 pom mybatis

前言

没有在pom文件中引入mybatis却可以用,是maven的依赖传递导致的这种奇怪现象~
一般是引用其它的依赖,这个依赖里面引用了你需要的其他依赖。记录一下具体的查看方法。


没有在pom文件中引入mybatis却可以用

1 具体问题

mybatis可以正常使用,但是在项目中所有的pom文件都没有引入mybatis

在这里插入图片描述

2 问题原因

因为其它依赖中也引用了,通过maven传递导致的这种奇怪显现。比如我们在项目中引入了pagehelper

            <!-- pagehelper 分页插件 -->
            <dependency>
                <groupId>com.github.pagehelper</groupId>
                <artifactId>pagehelper-spring-boot-starter</artifactId>
                <version>${pagehelper.boot.version}</version>
            </dependency>

而pegehelper中也引入了mybatis,那么如果我们项目中不引入,也是可以的

3 排查方案

  • 可以直接通过idea的右边栏点击maven的图标
  • 点击搜索的图标
  • 在搜索框中输入mybatis
  • 然后就可以看到依赖的路径关系

在这里插入图片描述

4 原理分析

我们可以通过在引入依赖中添加标签,添加 provided使得引入这个模块的不会被传递

<dependency>
    <groupId>com.example</groupId>
    <artifactId>init-web</artifactId>
    <version>1.0.0</version>
    <scope>compile</scope> <!-- 默认是 compile -->
</dependency>

  • compile 会被传递到其它模块
  • provided 不会被传递
  • test 仅测试时使用,不会被传递

标签:传递,依赖,pagehelper,maven,引入,pom,mybatis
From: https://blog.csdn.net/qq_44850489/article/details/142973180

相关文章

  • 基于springboot+mybatisplus+vue的校园美食推广与订餐管理系统
    基于springboot+mybatisplus+vue的校园美食推广与订餐管理系统......
  • 基于springboot+mybatisplus+vue前后端分离招聘管理系统
    ......
  • Mybatis的二级缓存
    以根据用户id查询用户为例。二级缓存开启:1.先配置全局二级缓存,2.UserMapper.xml文件中的sql语句上开启二级缓存。两者缺一不可。首先,我们假设已经有一个MyBatis的全局配置文件mybatis-config.xml,它启用了二级缓存:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEconfigur......
  • Mybatis 支持延迟加载的详细内容
    延迟加载的概念深入延迟加载是一种在处理复杂对象关系时非常有用的策略。在企业级应用开发中,数据库中的表之间往往存在着各种关联关系,如一对多(一个用户有多个订单)、多对多(一个学生可以选多门课程,一门课程可以被多个学生选)等。在传统的查询方式中,如果查询主对象(如用户),同时把与......
  • Maven 依赖的 Scope 元素
    原文(简单修改):Maven依赖中的Scope详解scope元素的作用:控制dependency元素的使用范围。通俗的讲,就是控制jar包在哪些范围被加载和使用。compile(默认)compile是默认值,如果没有指定scope值,该依赖的scope为compile。被依赖项目需要参与到当前项目的编译,测试,打包,运行......
  • JavaEE进阶-----mybatis操作数据库(新手教程)
    文章目录1.创建项目2.mysql相关操作3.安装插件4.工程创建4.1Bean文件夹4.2Dao文件夹4.3xml文件内容解读4.4配置文件4.5测试文件1.创建项目我们创建项目的时候需要注意下面的这个内容:1)maven项目;2)选择配置:我们之前使用的这个lombok和这个web还是要继续选择的;与之前......
  • 技术框架对MyBatis的入门学习
    MyBatis快速入门在回顾JDBC时,我们已经创建有Maven工程,而且在pom.xml中也已经导入mysql依赖包,这里就直接在原有工程上搭建MyBatis环境,以及使用MyBatis来实现JDBC查询user的操作流程。MyBatis环境搭建首先,在Maven项目的pom.xml中添加MyBatis的依赖jar包<!--导入mybat......
  • win10 ==>一步步 执行 mysql8 + jdk21 + maven 安装即配置
    ============================= mysql8 ================================================官网:https://dev.mysql.com/downloads/mysql/选择版本为8+ LTS版本 下载ZIP压缩包  如下图 点击download后,不用登录 点击  Nothanks,juststartmydownloa......
  • Mybatis
    文章目录Mybatis1.介绍2.使用MyBatis的开发步骤3.MyBatis的核心对象4.系统核心配置文件(mybatis.xml)Mybatis1.介绍MyBatis前身是iBatis,本是Apache的一个开源的项目半自动化的ORM实现(ORM框架)DAO层动态SQL实体类和SQL语句之间建立映射关系持久化是程序数据......
  • 在数据库字段命名格式和实体类属性命名格式不一致的情况下,通过配置 MyBatis 的通用 Ma
    MyBatis的通用Mapper支持使用@Column注解进行字段映射,但需要满足以下条件:项目中已集成MyBatis的通用Mapper(例如Mapper插件)。在通用Mapper的配置中启用了@Column注解支持。通用Mapper会根据实体类中字段的@Column注解值来映射数据库表的列名。使用@Colum......