Maven 打包时,依赖配置正确,但是类引入出现错误,一般是快照(Snapshot)依赖拉取策略问题

问题描述
项目打包时,类缺少依赖,操作 pom.xml -> Maven -> Reload project ,还是不生效,但是同事(别人)那里正常。

问题出现的环境

  1. 可能项目是多模块项目,结构例如:
my-project
|-- pom.xml(根项目)
|-- module-1
|   `-- pom.xml
|-- module-2
|   `-- pom.xml
`-- module-3`-- pom.xml
  1. 可能继承另一个项目(项目是快照版本),例如:
 <parent><groupId>other.project.groupId</groupId><artifactId>project_artifactId</artifactId><version>1.0-SNAPSHOT</version></parent>
  1. 可能依赖是快照版本,例如:
 <dependency><groupId>other.project.groupId<</groupId><artifactId>project_artifactId</artifactId><version>2.0.0-SNAPSHOT</version></dependency>

问题分析
Maven 查找依赖的顺序是 1.本地依赖 2. 私仓 3. 中央仓库,当类出现引入错误,但是(快照)依赖配置正确,问题可能是 快照依赖没有发布到 私仓, 或者你的本地Maven 没有拉取最新的快照依赖。
在默认情况下,Maven 并不会一直拉取快照依赖

问题解决

  1. IDEA 项目配置

在这里插入图片描述
2. Maven setting.xml 配置快照策略

 <repository><id>snapshots</id><url>your_snapshots_path</url><snapshots><enabled>true</enabled><!-- 配置快照拉取策略 --><updatePolicy>always</updatePolicy><checksumPolicy>fail</checksumPolicy></snapshots></repository><repository>

updatePolicy可以根据自身需求配置:

  • always : 总是检查最新的快照版本。
  • daily : 每天检查一次远程仓库以获取最新的快照版本
  • interval:X : 每隔 X 分钟检查一次远程仓库以获取最新的快照版本。
  • never : 从不检查远程仓库以获取最新的快照版本。
  1. 命令方式, Maven 强制拉取快照(Snapshot)依赖而不依赖本地缓存
mvn clean install -U

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/421681.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mybatis 动态SQL(set)

我们先用XML的方式实现 : 把 id 为 13 的那一行的 username 改为 ip 创建一个接口 UserInfo2Mapper ,然后在接口中声明该方法 package com.example.mybatisdemo.mapper; import com.example.mybatisdemo.model.UserInfo; import org.apache.ibatis.annotations.*; import jav…

【TOP顶刊】众望所归!这本IEEE(trans),号称行业白月光,上涨至中科院1区,评职神刊好投吗?

计算机类 • 神级顶刊 今天带来IEEE旗下trans系列顶刊&#xff0c;在最新的2023中科院分期中上涨至中科院1区&#xff0c;期刊质量实力强劲&#xff0c;如有投稿意向可重点关注&#xff0c;具体详情见下文&#xff1a; 01 期刊简介 IEEE Transactions on Automatic Control …

CRM是什么软件?

阅读本文&#xff0c;你将了解&#xff1a;一、CRM是什么软件&#xff1b;二、CRM软件如何进行客户管理&#xff1b;三、CRM软件有什么价值&#xff1b;四、优秀案例分享。 一、CRM是什么软件 CRM&#xff08;Customer Relationship Management&#xff0c;客户关系管理&…

【vscode】远程资源管理器自动登录服务器保姆级教程

远程资源管理器自动登录服务器 介绍如何配置本地生成rsa服务端添加rsa.pub配置config文件 介绍 vscode SSH 保存密码自动登录服务器 对比通过账号密码登录&#xff0c;自动连接能节约更多时间效率&#xff0c;且通过vim修改不容易发现一些换行或者引号导致的错误&#xff0c;v…

【Spring 篇】MyBatis多表操作:编织数据的交响乐

欢迎来到MyBatis的多表操作世界&#xff01;在这个充满交响乐的舞台上&#xff0c;我们将探索如何巧妙地编织多个数据表的数据&#xff0c;创造出一场旋律动听的数据交响曲。无需繁琐的SQL拼接&#xff0c;MyBatis让多表操作变得优雅而简单。让我们一起进入这个音乐殿堂&#x…

8.3 Springboot整合Redis 之Jedis方式

文章目录 前言一、Maven依赖二、新增子Module:tg-book-redis三、Jedis配置类3.1 Jedis连接池核心配置说明四、Jedis 工具类五、新增controller测试前言 Jedis是Redis官方推荐的Java客户端连接工具,用法非常简单,Jedis的API与Redis的API可以说是一模一样,所以非常有利于熟悉…

[足式机器人]Part2 Dr. CAN学习笔记- 最优控制Optimal Control Ch07-2 动态规划 Dynamic Programming

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记 - 最优控制Optimal Control Ch07-2 动态规划 Dynamic Programming 1. 基本概念2. 代码详解3. 简单一维案例 1. 基本概念 Richoard Bell man 最优化理论&#xff1a; An optimal policy has the …

低温恒温器的常见毛病及维护

低温恒温器广泛应用于恒温精度要求较高的科研&#xff0c;高等院校、电子仪表、生物工程、医药、固态与液态化合物的低温恒温培育。因为各种原因在运用的过程中偶然会碰到恒温水槽频繁呈现毛病的状况&#xff0c;那么低温水槽呈现毛病到底是什么原因形成的呢&#xff1f;总结下…

Linux:使用for+find查找文件并cp到其他目录,文件名带有空格

一、场景描述 在终端窗口中&#xff0c;用shell命令&#xff0c;批量拷贝文件到指定目录。 我是在Windows系统上&#xff0c;通过git bash终端来执行shell命令的。 二、实现过程 命令1 for filepath in find /d/LearningMaterials/数学/数学/高中/一数/偏基础&#xff08;基…

2.上传图片到Minio服务中

上传图片 界面原型 第一步: 用户在课程信息编辑界面可以上传课程图片或者修改上传的课程图片 第二步: 请求媒资管理服务将课程图片上传至分布式文件系统同时在媒资管理数据库保存文件信息,上传成功后返回图片在MinIO中的地址 第三步: 请求内容管理服务保存课程信息含课程封…

C语言实战系列一:经典贪食蛇

C语言学习必须实战&#xff0c;并且学完语法后就必须立即用实战来巩固。一般需要10来个比较复杂的程序才能掌握C语言。今天就教大家第一个小程序&#xff0c;贪食蛇。 首先上代码 一、代码 #include <stdio.h> #include <stdlib.h> #include <curses.h> #…

代码随想录 Leetcode239. 滑动窗口最大值

题目&#xff1a; 代码&#xff08;首刷看解析 2024年1月22日&#xff09;&#xff1a; class Solution { private:class MyQueue{public:deque<int> que;void pop(int val){if (!que.empty() && que.front() val) {que.pop_front();}}void push(int val){whil…