Intellij IDEA中出现“Cannot resolve symbol”错误

9
我对Intellij和Java还比较新,无法在一个“模块”中使用另一个模块的库。我看到了红色的类名,并且遍布各处出现“无法解析符号…”的错误:
其他模块在“文件|项目结构”中被引用,所有其他模块的路径都是正确的,包括我正在尝试使用的*.classes:
我还尝试了“文件|无效缓存”,但仍然遇到相同的问题。
我需要做什么来解决这个问题?
8个回答

21

以下是可能解决问题的步骤:

1. 清除并刷新 IntelliJ 的缓存

文件菜单 -> 清除缓存 / 重启 -> 清除并重启

2. 选择项目 SDK

从文件菜单中检查项目设置 -> 项目结构 确保为项目 SDK 选择了一个 SDK。如果没有选择,点击“新建”按钮,选择 JDK,然后选择正确的 JDK 路径,例如 /opt/java/jdk1.8 或 c:\Java\Jdk1.8

3. JDK 损坏

您的 JDK 安装可能存在问题,请重新安装 JDK。

4.重新导入项目

如果 IntelliJ 中打开了该项目,则关闭该项目。 删除项目源代码文件夹中的 .idea 文件夹。 启动 IntelliJ 并导入项目。

您可以选择其中任何一个方法来解决问题。


5

我曾经也因为不明原因遇到了类似的问题,我认为这是由于IDE(Android Studio)引起的。我尝试了以上所有解决方案,但都没有用。最后,在我的情况下,我通过以下步骤解决了这个问题:

  1. 删除本地项目中的 .idea 文件夹。
  2. 重新打开该项目,让Gradle自己运行即可。

这对我很有用,我希望我的经验对您有所帮助。


4

您可以前往“文件->项目结构”。

在“项目设置”中,选择“项目”选项卡,确保“项目SDK”选择了适当的JDK。

输入图片描述


3

为了让IDEA在进行代码分析/自动完成时能够看到它们,您需要将外部库/类添加到依赖项中。


我已经尝试过这个,但是我在看到这个问题的模块(截图中的dd4t-example站点)在项目结构窗口中不可用http://i.imgur.com/ksFUFEG.png。 - Mark Williams
这是因为它不是一个模块(图标上没有蓝色方块指示器)。你可以从这个文件夹创建一个模块(文件 > 新建 > 从现有源创建模块),或者将这个文件夹作为依赖项添加(在你的模块设置 > 依赖项中,点击绿色的 + 按钮,选择“JAR 文件或目录”)。 - Darek Kay
谢谢。将该项目作为模块添加,并将其他模块作为依赖项添加,解决了问题。 - Mark Williams

1

从项目的根文件夹运行它。

$ mvn -U idea:idea

使用这个命令后,路径问题已解决。谢谢你。 - undefined

1

在向POM文件添加依赖项后,养成点击“重新导入Maven项目”图标刷新POM的习惯。该图标位于IntelliJ主编辑器右侧的Maven工具窗口中的第一个图标。它是一个带有2个圆形箭头的蓝色图标。点击它可以确保添加的依赖项完全集成到您的项目中。


0

刚刚得到了这个。 刚去那里。 使缓存无效。 似乎工作正常,直到我写更多的代码。 然后注意到我在main()函数之外编写我的代码。 将结束花括号移动到更远的位置,问题解决。


0
另一个建议是确保正确导入项目。如果它是一个Maven项目,则导入pom.xml;如果是Gradle项目,则导入gradle.build文件,以确保正确下载所有依赖项。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接