idea-maven 引入jar报错解决方案大全(总有一个你需要的)

Posted 执笔记忆的空白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea-maven 引入jar报错解决方案大全(总有一个你需要的)相关的知识,希望对你有一定的参考价值。

一、前言

经常有小伙伴(包括我自己)遇到xxx.jar引入不进来,或者xxx.jar打包的时候提示没有,或者dependencies 画波浪线等等。 今天就整理一版全面的maven异常以及对应的解决方案。

二、相关异常,以及解决方案

  1. 本地有jar目录,但是引入jar报错
  2. 本地有对应版本jar包,但是idea pom.xml引入还是报not found
  3. 本地有jar包,但是maven的dependencies还是划波浪线提示找不到
  4. pom能引入,但是maven的dependencies 提示 unknown
  5. jar冲突
  6. 代码编译正常,但是打包的时候提示找不到jar or class

三、解决方案

  1. 当本地有jar,但是引入还是报错时,重启并清除idea缓存,如果还不行,删除已下载的本地仓库的jar目录,maven clean 一下,同时,重新reimport all maven projects
  2. 处理方式同上,如果还不行,在pom.xml里面把对应的jar的dependency给删掉,保存,然后再重新引入
  3. 本地有jar,同时上述1-2的做法都尝试了还不行,看看maven的版本和idea的版本是不是冲突了,比如idea 2020版的需要用的是maven3以上版本,或者maven3.6以上版本。另外可以查看settings.xml的私库地址是否配置正确
  4. 当pom.xml引入正常,项目代码报错,发现引入的版本是unknown,这个时候就去看看settings.xml的仓库地址里面 有没有对应版本的jar,这里有个特别点就是,当外层引用的jar未指定版本的时候,有可能造成级联引用的jar出现unknown的情况。
  5. jar冲突,这个问题很常见,我个人是下载了一个idea插件:Maven Helper
    使用方式参考:IntelliJ IDEA 好用插件之Maven Helper
  6. 代码编译正常,但是打包缺少jar or class,这种情况就是maven引入的时候,是不是定义了dependency的scope属性,去掉即可,比如
<dependency>
			<groupId>com.cips.cmep</groupId>
			<artifactId>smtools</artifactId>
			<version>1.0.0</version>
				<scope>compile</scope>
		</dependency>

暂时先写到这,后续有遇到其他的再补充,也欢迎其他看官补充说明和纠正!

以上是关于idea-maven 引入jar报错解决方案大全(总有一个你需要的)的主要内容,如果未能解决你的问题,请参考以下文章

引入本地jar包打成jar包启动报错:NoClassDefFoundError

jar包冲突解决

IDEA-Maven Projects中9种生命周期认识

Maven引入Hadoop依赖报错:Missing artifact jdk.tools:jdk.tools:jar:1.6

maven中引入oracle驱动报错Missing artifact com.oracle:ojdbc14:jar

idea下一次Jar包依赖问题的解决过程