网上有很多解决方式,我想到的都汇总起来了,方便以后查看,你可能采用其中一种就能解决问题,我是用了最后一种才解决。
如果你要导入的包在Libraries下都本身一直没有存在,你这时就得看看pom里对应的依赖写的有没有问题,名字版本什么的在使用的仓库中有没有对应的jar包,如果确定没有问题,那么再尝试采取以下的前几种方式解决。
1. 执行Maven ->reload project
作用:重新导入Maven包
2种方式:
1.选择 Project 目录右键 -> Maven -> reload project
2.maven插件方式刷新(推荐)
2. 执行 Invalidate and Restart
作用:清除 Idea 缓存,并且重启 Idea。
很多情况下idea导致的问题通过这个方式基本都能解决。
方式:-> 工具栏 -> File -> Invalidate Caches / Restart
4. 统一编码
作用:将编码设置成 UTF-8。
方式:都设置成UTF-8,设置完别忘记点击Apply(应用)
5. 重新编译
方式很多:
1.点击Build菜单下的rebuild
2.在maven插件下的对应项目/模块下点击1,2。install代表重新安装包。
6. 设置idea自动加载jar包
当出现如题所示的错误时候,不用着急,这是因为配置Java的程序包这块出现了错误,同时可能你还没有设置让IDEA自动加载Jar包,才会报出这种错误的。解决方式如下:
File—>Setting—>Build,Execution,Deployment—>Maven—>Importing
7.删除本地的私有仓库后,再更新maven,重新加载
ps:我出现的问题用以上方式都没能解决,用接下来的才解决了。希望你不需要看到这里。
8.如果以上方式都没能解决,那毋庸置疑是idea的问题,如果你用的是2020.1~3版的,那有问题的概率更大
解决方式:将IDEA 的 build/run 动作如果委托给了 maven
此时再重新编译运行,能正常通过。
但是,如果你感觉启动变慢的话,你要检查下是不是编译了两遍,可以写个测试类,一编译启动就插入一条数据,看数据库是否会有两条;也可以直接看idea下面的编译框。
为什么会编译两遍呢?
上述委托给maven勾选后,找不到包的问题解决后,但是可能maven插件和idea会先后各编译了一遍。
解决方式:将pom.xml里的编译插件换成
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
这时发现只会编译一遍了。本地通过idea启动项目不会有什么问题了。
但是,当你将项目打成包,通过jar方式启动时,可能出现报错,找不到主属性,当然了,没有更好,有的话,继续补充下面的代码就行。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
综上所述:我试过所有的方式之后,最终是用最后的方式解决的问题,然后又一步一步发现了新的问题,如果你和我一样,那不用浪费时间了,直接照我的来就行。若能帮助到你,别的不要,点个赞就行,谢谢了。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/92311.html