java - 在 IntelliJ 中遇到一个问题,它只接受 java 包的通配符导入,而不是来自 java 包的特定类
问题描述
关于我的项目的信息:
- Gradle 版本 6.8.3
- 龙目岛版本 1.18.18
- IDE 版本 2020.3
我在 Windows 环境变量中的 JAVA_HOME 路径设置为最新的 Java JDK (15.0.2)。项目结构路径中的项目语言也设置为 Java 15。
我目前正在使用 IntelliJ 版本 2020.3,几天后我遇到了以下问题。当我想从java包中导入特定的类或接口时,例如java.time.LocalDate
. IntelliJ 将此导入标记为未使用的导入Unused Import java.time.LocalDate
在我用LocalDate
通配符替换后*
,消息消失了java.time.*
在下一步中,我对要导入的另一个类做了同样的事情。这次我使用了java.util.Set
导入。在我写完之后也出现了同样的信息Set<TestClass> foo;
。无法解析符号“集”
当我用消息替换时java.util.Set
消失java.util.*
了。java.util 的通配符导入
每次我想从 Java JDK 库中导入特定的类时都会遇到这个问题。当我从 Gradle Dependencies 导入库时,一切正常。所以这个问题只发生在 Java 库上。
我已经尝试了以下步骤来解决问题:
- 使用 IntelliJ VCS 导入项目
- 检查项目结构中是否有任何不正确的设置
- 文件 -> 使缓存无效/重新启动
- 项目结构 -> 项目 SDK 并再次添加相同的 Java JDK
- Ctrl + Shift + A 和恢复默认设置
代码示例:
import java.time.LocalDate;
import java.util.*;
import lombok.Getter;
import lombok.Builder;
@Builder
@Getter
public class TestClass {
private LocalDate testDate;
private Set<TestClass> foo;
}
解决方案
在安装 Eclipse 并获得与 IntelliJ 中相同的错误报告之后。我重新安装了 jdk 15.0.2。我在 IntelliJ 中再次重新打开了该项目,一切正常。java.util
当我使用类时,IntelliJ 推荐导入。所以我现在就结束这个问题。非常感谢你们试图帮助我解决这个问题。最后,解决问题要容易得多。
推荐阅读
- flutter - Flutter 的 Canvas.drawOval 是椭圆吗?
- javascript - 标题菜单 onPress 在 React-native 中不起作用
- sql - 如何在 SQL 中创建一个类似于 Sumifs 的函数,其条件是每行中的值?
- ignite - 启动时出现“IgniteCheckedException:未配置请求的 DataRegion”
- python - 如何使用 python 客户端查看/验证 pod eviction 调用是否完整?
- javascript - 地图如何在角度上进行观察
- python - 无法获得连接到网页中某个选项卡的选择性名称
- javascript - 如何在 JS 文件中导入 API/外部 JS?
- c++ - 当 cin 和 cout 解开时使用 std::endl vs "\n"
- reactjs - this.setState 后表单未重置 - 反应