汇总解决idea出现import包时报错Java:程序包xxxx不存在,但包确实存在的问题

导读:本篇文章讲解 汇总解决idea出现import包时报错Java:程序包xxxx不存在,但包确实存在的问题,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

网上有很多解决方式,我想到的都汇总起来了,方便以后查看,你可能采用其中一种就能解决问题,我是用了最后一种才解决。

如果你要导入的包在Libraries下都本身一直没有存在,你这时就得看看pom里对应的依赖写的有没有问题,名字版本什么的在使用的仓库中有没有对应的jar包,如果确定没有问题,那么再尝试采取以下的前几种方式解决。

1. 执行Maven ->reload project

作用:重新导入Maven包
2种方式:
1.选择 Project 目录右键 -> Maven -> reload project
2.maven插件方式刷新(推荐)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

(1)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!