在Eclipse中,当所有Java源代码编译没有错误时,什么会导致Package Explorer“red-x”错误图标?

时间:2008-10-22 10:28:46

标签: java eclipse

我正在使用Eclipse进行Java开发。我的所有源代码编译良好,生成的应用程序编译良好。但是,我一直在Package Explorer中收到“red-x”错误通知。

这个源目录中的所有源代码(对于快照来说太长)编译正常,没有显示“red-x”错误图标。

有关如何解决问题的任何建议都将受到高度赞赏。

27 个答案:

答案 0 :(得分:154)

是的,有时这种情况无缘无故发生。您可以转到“问题”-Tab(控制台输出旁边)并查看错误消息,因此您可以将其缩小范围。

答案 1 :(得分:14)

这种情况经常在我使用Maven时发生,而且在我发现这个问题之前我总是忽略它。在这种情况下,您需要更新项目(通过查看“问题”窗格计算出来)

从项目上下文菜单:Maven - >更新项目并选择可用的maven代码库

或者,您可以使用(Alt + F5)调出相同的窗口

答案 2 :(得分:10)

尝试清理项目并重建它。

答案 3 :(得分:5)

首先,我要感谢所有回答的人。但在我的情况下,清洁和重建是不够的,因为问题仍然存在,需要修复。

原来我的一个软件包目录被意外复制,因此现在存在一个名为“dagskra的副本”的额外目录,其中包含带有错误软件包声明的Java文件。此外,此“新”目录中的错误不会在其中存在的包中显示“red-x”:

Snapshot from Package Explorer showing errorous "Copy of dagskra" directoryr http://www.freeimagehosting.net/uploads/a824304b18.png

这是阅读“问题”标签的暗示:-)让我转向正确的方向,所以我选择那个答案作为接受的答案,因为这就是我所需要的:

Snapshot from Problems tab http://www.freeimagehosting.net/uploads/dea26d5dd0.png

希望这会有助于其他人......

答案 4 :(得分:4)

构建后。刷新项目,如果仍然存在,只需右键单击eclipse中的Problems选项卡,然后选择delete all。

如果您执行maven安装并且eclipse属性文件无法正确更新,通常会发生这种情况。即使您的项目没有任何错误。希望!

答案 5 :(得分:1)

我遇到了同样的问题,以下步骤解决了这个问题:

  1. 从PROJECT中删除JRE>属性> java构建路径>库。

  2. 重启日食

  3. 再次添加JRE

  4. 使用Project> Clean重建项目并选择自动构建选项。

  5. 请尝试。

答案 6 :(得分:1)

Subversion偶尔也会成为罪魁祸首。它可能与您的环境无关。但是,项目的当前和当地状态之间可能存在差异。在我的情况下,进行更新,然后提交到subversion服务器,为我提供了预期的清理结果,没有项目中的任何标志,如X.

答案 7 :(得分:1)

因此,一旦发现构建路径中可能存在缺少的包,因此红色x针对主项目,将其删除:

1)进入项目的“配置Buildpath” 2)Java构建路径 - >源选项卡 - 您应该看到缺少的包/文件的红色x。如果它不再存在,只需“删除”它。

红色X开始了! :)

答案 8 :(得分:1)

有时在.project中存在构建路径错误,您需要切换到资源视图以实际查看导致错误的文件。

答案 9 :(得分:0)

要添加到上一个答案,“清理”项目的一种极端方法是删除它(即从工作区删除其引用,而不是删除实际文件),然后重新导入它。
有时,它有帮助...

答案 10 :(得分:0)

问题很老,但我遇到了这个问题,我尝试了以下方法无济于事。

  • mvn 更新(带快照)
  • 删除项目并重新导入
  • 干净的构建
  • 重启 Eclipse
  • 更改构建路径中项目的顺序

就我而言,我有多模块 mvn 项目,其中一个嵌套项目仅在项目资源管理器中显示红色 X 图标(包资源管理器和问题完全没问题),整个项目都很好,因为我可以运行类没有任何问题。所以看起来像是显示问题。

唯一对我有用的是编辑 pom.xml 如果有问题的项目模块并进行破坏性更改(将“xxx”添加到标记名称)导致 1000 多个错误然后撤消。

答案 11 :(得分:0)

我今天遇到此问题,并找到了此链接。我按照上面的Patrick Schaefer所述,打开了“更新Maven项目”对话框。单击我的工作项目,然后选中“强制更新快照/发布”和“确定”复选框。所有的红十字都消失了。 我希望这可以帮助处于类似情况的任何人。

答案 12 :(得分:0)

你可以去项目 - > Buildpath->文库

如果有任何X标记的库,即[交叉标记]将其删除并再次尝试构建。它也适用于我/

答案 13 :(得分:0)

我有同样的问题。我检查了#34;问题" -Tab,发现该项目没有服务器。我定义了服务器。 red-x消失了

答案 14 :(得分:0)

我很多时候遇到过类似的问题,通常对我来说,一个java文件会说它不会在文本编辑器中编译,但是在包浏览器中它会说它编译得很好。

有时做“重建”或“清理构建”不起作用,文件实际上并没有构建(必须假设eclipse认为它拥有的文件是最新的)并且当这发生时我通常打开java构建路径,然后向下/向上移动我的一个依赖关系。这迫使eclipse重建一切,似乎总是有效。

如果你仍然遇到问题,请尝试复制项目并查看是否有相同的行为,并在最后一次尝试发布日食错误时,可能需要一段时间才能解决,但至少你知道你听到了。

答案 15 :(得分:0)

在我的情况下,解决这个问题的原因只是关闭Eclipse并再次打开它......但是我仍然不确定为什么会发生这种情况或为什么会这样。我在清理我的项目时遇到了问题(它说它无法删除某些文件)并且这解决了它:):

答案 16 :(得分:0)

当我在Eclipse Mars上下载fabric.io但是重启计算机为我解决了这个问题时发生了这种情况。

答案 17 :(得分:0)

FindBugs还对文件/包放置了一个red-x来表示静态代码分析错误。

答案 18 :(得分:0)

我通过

解决了我的问题
  • 关闭所有其他项目(即不相关的项目选项)

  • 清理并构建

我的项目是android,就是这样做的。

答案 19 :(得分:0)

这可能由于多种原因而发生。如果您更改了jdk,Project facet旁边会有一个红色的X,而其他文件夹没有显示错误。如果是这种情况,请修改显示的jdk。在我们的JAX-WS类(HSG

中偶尔会发生这种情况

答案 20 :(得分:0)

此外,您可以点击

更新项目

右键单击项目名称 - >选择Maven - >右键单击 - >更新项目。

这对我有帮助。

感谢。

答案 21 :(得分:0)

尝试进行重建。我发现在重建完成之前,红色x并不总是消失。

答案 22 :(得分:0)

我的解决方案最终起作用是清理所有项目,关闭日食,清理所有项目,关闭日食等等至少5-6次。最终这一切都安定下来,一切都如预期的那样。最奇怪的事!

并且问题或控制台视图中没有错误。

这也发生在计算机崩溃之后。它最后一次发生我的整个工作区完全丢失了。它仍然存在于计算机上,但当我试图访问它时,它将全部为空白。

无论出于什么原因,eclipse确实真的很难处理计算机崩溃。

答案 23 :(得分:0)

我也经常在包装上体验那些神奇的错误符号。摆脱对我有用的方法是从Java Build Path中有效地删除JRE系统库并再次添加它。

答案 24 :(得分:0)

正如其他人所说,构建路径中的错误文件引用通常是罪魁祸首。

通常是已移动/删除的.jar文件。 Eclipse期望在指定的位置找到构建路径上引用的所有内容,如果没有,则会抱怨。

答案 25 :(得分:0)

我已经完成了这个。我的案子更多涉及。该项目从maven命令行打包好。

我做了几件事。 一类有许多混淆eclipse的进口。清理它们解决了部分问题 2.有一个案例是关于一个塞特,按F3导航到塞特,尽管日食抱怨它不存在。所以我只是重新输入它并且它工作正常(即使是所有其他Setter)

我仍在努力 隐式超级构造函数Item()未定义为默认构造函数。必须定义一个显式的构造函数“

答案 26 :(得分:-2)

右键单击有错误的项目,然后在子菜单中选择:   Maven > UpdateProject >

然后:

  • 选中所有相关项目的复选框
  • 选择强制更新快照
  • 点击“确定”。

这对我有用..