maven 总是无法正确导入依赖问题求解答

2024-02-27 05:30:51 +08:00
tiRolin  tiRolin

最近做项目创建了一个 Spring 项目后遇上了这个问题

具体是在 pom 文件中无法导入 fastjson 的依赖,无论怎么刷新都爆红

解决方式我尝试过更换镜像地址、重新安装 maven 、删除 maven 仓库的内容重新加载、更改 maven 地址、跟着网上的教程增加内存等等,都没能解决这个问题

但是奇怪的事,fastjson 的依赖导入不了,总是爆红,但是 springboot 的相关依赖又能正确导入,非常的怪

我导入依赖的代码如下

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.66</version>
</dependency>

当然感觉直接下载 jar 包导入也是能用的,但是感觉这种方法太 low 了,还是想解决这个问题这样的

这个问题卡了我一天了,球球各位懂的大佬不吝赐教,我先谢谢各位了

2141 次点击
所在节点   Java  Java
19 条回复
wxg4net
wxg4net
2024-02-27 05:53:59 +08:00
用的什么编辑器?应该重载一下工程就能消失
phrack
phrack
2024-02-27 06:10:00 +08:00
invalidate cache 或者 maven->reload

实在不行删掉 idea project 重新导入。

假如你用的 idea 的话。
xuanbg
xuanbg
2024-02-27 08:07:46 +08:00
本地.m2/repository/com/alibaba/fastjson 目录删掉,然后刷新一下重新加载看看能不能好
potatowish
potatowish
2024-02-27 08:47:39 +08:00
找到对应的版本依赖目录,删除.lastupdated 文件
wushigejiajia01
wushigejiajia01
2024-02-27 08:57:30 +08:00
我有时候也遇到这个问题,明明仓库里有包,但是依赖死活拉不动,
然后我发现,重启下 IDEA 再进来,就能拉动了
就很无语
misaka19000
misaka19000
2024-02-27 09:00:31 +08:00
查看 maven 执行时候的报错信息
Goooooos
Goooooos
2024-02-27 09:28:36 +08:00
换最新版本号试试?
cleanery
cleanery
2024-02-27 09:45:17 +08:00
改镜像仓库, 删除 .lastupdated 文件
pangdundun996
pangdundun996
2024-02-27 10:05:33 +08:00
IDE 爆红不一定是没下到依赖,终端编译一下试试:mvn clean compile
能编译过的话就是 IDE 的问题,不行再看具体报错
chinaguaiu
chinaguaiu
2024-02-27 10:33:27 +08:00
有可能是废文件导致的。到本地的 maven 仓库删掉对应的包文件夹可以强制让 maven 在下一次拉依赖时重新下载更新。例如 fastjson 在:C:\Users\用户名\.m2\repository\com\alibaba\fastjson\2.0.2

你可以某个版本号的文件夹删了,或者直接把 fastjson 这个文件夹删了,或者更激进一点把 alibaba 这个包删了,甚至 com 包、repository 。总之,这样做相当于把本地 maven 仓库缓存的文件删掉,有时候 maven 拉取依赖失败了会在本地仓库留下废文件占用了名称路径,这时候就需要使用这种方法手动清理废文件。
diagnostics
diagnostics
2024-02-27 11:23:51 +08:00
1. maven idea:idea
2. invalidate cache 然后重启
3. 删除 .m2/repository/com/alibaba/fastjson 下的所有包,重新下载

做完这些还不行,再看看 mvn dependency:tree 是不是有不同版本的 fastjson 依赖?
helee9199
helee9199
2024-02-27 11:29:38 +08:00
# 这里写你的仓库路径
REPOSITORY_PATH=/Users/helee/Develop/maven/repository
echo 正在搜索...
find $REPOSITORY_PATH -name "*lastUpdated*" -print | xargs rm -frv
echo 搜索完
read -p "按任意键退出..."
prosgtsr
prosgtsr
2024-02-27 15:59:51 +08:00
我是 windows
总共分三步

1:打开 everything ,搜索.lastupdated ,全部选中,删掉
2:idea 选中这个项目,点一下 maven reimport
3:还不行就再删除一遍.lastipdated ,然后 idea ,invalidate cache and restart
prosgtsr
2024-02-27 16:00:42 +08:00
@prosgtsr everything 是一个搜索本机文件的软件
pocketz
2024-02-27 17:06:41 +08:00
报错日志也不发,那你过来问有什么意义
Corybyte
2024-02-27 17:21:20 +08:00
安装本地依赖
tiRolin
2024-02-27 20:39:43 +08:00
@pocketz 没报错就是,我都没找到爆红的日志,只有依赖爆红
tiRolin
2024-02-27 21:19:21 +08:00
@Goooooos 太感谢了,的确是版本的问题,jdk 17 不支持 3.6.1 的 maven ,太谢谢你了
jeesk
2024-02-27 22:36:53 +08:00
直接把 fastjson 下载到项目根目录,然后作为本地仓库导入。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1018669

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX