解决IDEA无法找到类的问题

前言:在使用IDEA,通过Maven项目构建工具构建项目时,经常会遇到“无法找到类(Class not found)”的错误,但是类本身没有问题,也成功在编译输出的文件中找到,会非常奇怪。另外在Maven项目中编写了测试类,运行程序经常会失败,经常需要跳过测试类的情况出现,因此通过查到资料,实践得出以下解决方案。

问题描述

运行程序报错,无法找到相关的类(Class not found)

Snipaste_2022-04-04_23-17-22

但是通过查找发现存在该类

Snipaste_2022-04-04_23-22-08

SDK设置和文件输出均正确

Snipaste_2022-04-04_23-46-54

Snipaste_2022-04-04_23-46-06

解决方案

方法1: 用Maven命令先clean后compile

清除target文件在重新编译项目,有时可能不成功,需要多次操作,较为麻烦,有用但繁琐,不推荐

Snipaste_2022-04-04_23-24-46

方法2: 勾选 Store generated project files externally (在外部存储生成的项目文件)
推荐该方案,建议勾选
勾选后,不会在.idea目录下生成.iml文件和library文件,选中后有利于通过版本控制去共享

Snipaste_2022-04-04_23-19-17

方法3: 勾选 Delegate IDE build/run actions to Maven (将编译托管给maven)
不推荐该方案,建议取消勾选
勾选后,项目的测试运行极慢,每次都会通过Maven进行clean和package等操作。

Snipaste_2022-04-04_23-18-41

解决结果

我的解决方案是取消勾选 Delegate IDE build/run actions to Maven,并勾选 Store generated project files externally,最终运行结果如下,成功运行该程序

Snipaste_2022-04-04_23-19-38

测试过如果不勾选 Store generated project files externally只取消勾选 Delegate IDE build/run actions to Maven,同样可以运行该程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值