zoukankan      html  css  js  c++  java
  • Maven 本地仓库明明有jar包,pom文件还是报错解决办法(Missing artifact...jar)

    错误截图:

    仓库明明有jar包:

    搞了一天,各种update project 和maven install还是不行,最后百度解决问题,之前用的是eclipse 版本 2018-12 版本,最近项目需要,换笔记本用mars2火星eclipse,方案如下:(红色文字,最终解决了问题)

    maven报错,提示Missing artifact...jar文件 ,其实这些jar包在本地.m2/repository是有的。

     maven中的本地仓库的index索引没有更新导致,项目使用maven管理jar包,很容易因为各种原因(网速慢、断网)导致jar包下载不下来,出现很多.lastUpdated文件。

    解决方案:

        首先尝试

    工程右键--Maven--Update Project ,一定要选择离线状态一定要选择Offline

    如果不行,按下面步骤:     

            1 ,删除.lastUpdated文件

            开始--运行--cmd ,通过命令行进入D:.m2 epository

            粘贴:for /r %i in (*.lastUpdated) do del %i

            回车,删除所有的

             如果解决不了,可删掉所有_maven.repositories,remoute.repositories文件

            2,在eclipse中打开菜单 window-> show view –> other –> Maven -> maven repositories

             打开之后,选择local repositories –> local repository ,右击,选择Build index.

            3,工程右键--Maven--Update Project ,一定要选择离线状态一定要选择Offline

    总结:

    最后还是通过update project解决问题,不过要勾选上offline,这个单词字面意思是离线,未在线的,也就是有本地仓库有jar包的情况下,勾选后update操作不会从maven远程仓库去查找要更新的jar包,而是从maven本地仓库查找pom.xml中配置的jar包以更新到项目。

    后记:

    最近在整理公司的一些较老的项目时,再次发现这个问题。又总结了两点,maven项目如果java类报错,说缺少东西,即使你本地仓库有jar包,也要在pom文件中引入相应的依赖,才算加入到项目中。

    另外一些老的项目,特别是一些父项目,子项目,有互相依赖关系的项目,如果报的错误,说jar包缺少很多。接谁的项目跟谁要jar包,一个文件夹的要直接,另外本地仓库中尾椎格式为pom的文件是不能删的,以前我以为可以,后来出了问题,还是别删。

  • 相关阅读:
    淘宝API学习之道:淘宝TOP之API接口接入教程
    hdu 2952 Counting Sheep
    【Java 虚拟机探索之路系列】:JIT编译器
    Android Afinal框架学习(一) FinalDb 数据库操作
    class、interface、struct的差别
    13个Cat命令管理文件实例汇总
    Linux df 命令用法示例
    九个uname命令获取Linux系统详情的实例
    Linux中查看进程的多线程
    精通Linux的“kill”命令
  • 原文地址:https://www.cnblogs.com/wanlige/p/12657803.html
Copyright © 2011-2022 走看看