Eclipse中的红色感叹号图标是什么意思?


157

Eclipse中的红色感叹号图标是什么意思?互联网上关于“红色感叹号图标”,“红色感叹号装饰器”和“红色爆炸图标”的搜索结果很多,这无疑是因为许多插件和与编程相关的工具都使用了红色感叹号图标。因此,很明显,这就是我的意思:

红色感叹号图标的屏幕截图

它在Package Explorer视图中显示为项目上的装饰器。

就我而言,当缺少的构建路径变量被填充时,该图标消失了。我使用的是MyEclipse 9.0,但我认为这不是MyEclipse特有的。Internet上的其他人报告说,它与其他问题有关,包括Subclipse,.svn文件夹和工作副本之间的移动文件。


1
由于这竟然是一个标准的Eclipse图标:又见stackoverflow.com/questions/1561336/...
流行

Answers:


182

根据文档

装饰包含构建路径错误的Java项目和工作集

在实践中,我发现“构建路径错误”可能是由多种原因引起的,具体取决于激活的插件。检查“问题”视图以获取更多信息。


1
我有错误广告将其删除,但我仍然看到红色图标。有点令人困惑
vsingh 2012年

1
这是因为上传者为外部Jar创建的路径与我的位置不同。+1以获取信息。
世界末日

1
如果是SVN故障,则“问题”视图什么也不显示。尝试从有问题的文件夹中删除.svn文件夹,如果发生这种情况,请刷新。
iono 2012年

16
“检查问题视图” +1 。在我的情况下,已检查的项目没有任何问题,但是项目是“缺少必需的源文件夹:'target / generated / src / main / java' ”。这就是当您使用Maven并且在结帐后第一次尚未构建项目时发生的情况。
版主

另外-有时,当您尝试重新添加JAR时,它仍然指出JAR已链接到构建路径中。等待片刻,它应该修复它。
Rishi 2015年

17

当我尝试将源文件和JAR文件从一台计算机导入另一台计算机时,我也遇到了类似的问题。与旧计算机相比,新计算机上的JAR路径有所不同。我解决了如下

  1. 右键单击“项目名称”
  2. 选择“构建路径”
  3. 然后选择“配置构建路径”
  4. 点击“图书馆”
  5. 删除所有引用旧路径的库

然后,删除了“项目名称”上的感叹号。


感谢您的回答。感谢您愿意提供帮助,但从技术上讲,这并不能回答我的问题。我想知道图标的含义,但这仅说明了如何摆脱它。
流行

16

这意味着项目中的构建路径存在问题。如果它是一个android项目,则大多数情况下意味着找不到project.properties文件中指定的目标值。这也可能是由于其他种类的内置问题引起的。但这主要是针对已建问题而显示的。有关更多详细信息,请参见此处。它是关于在Eclipse中看到的内置错误修饰器。

该页面的摘录:

在项目中的其他问题中,有时容易忽略构建路径问题。现在,Package Explorer和Project Explorer视图在包含构建路径错误的Java项目和工作集上显示了一个新的装饰器:

在此处输入图片说明

可以在“问题”视图中看到具体的错误,如果打开视图菜单并选择“分组依据”>“ Java问题类型”,则所有错误均会显示在“构建路径”类别中:

在此处输入图片说明


7

可能有几个原因。在大多数情况下,可能是以下某些原因引起的,

  1. 您已经从/ lib文件夹中删除了一些.jar文件
  2. 您已添加新的.jar文件
  3. 您添加了可能与其他文件冲突的新.jar文件

因此,我们要做的是解决那些丢失/更新/新添加的jar文件。

  1. 右键单击该项目,然后 go to properties
  2. 选择 Java Build Path
  3. 转到Libraries标签
  4. 删除已经删除的jar文件引用。它们附近会有一个红色标记,因此您可以轻松识别它们。
  5. 通过使用添加到新添加的.jar文件的引用 Add JARs
  6. 刷新项目

如果是由于上述原因之一,这将解决问题。


6

我发现了另一个可能出现红色感叹号的情况。我将目录从一个项目复制到另一个项目。该目录包括一个隐藏的.svn目录(原始项目已提交给版本控制)。当我将新项目检入SVN时,复制的目录仍然包含旧的SVN信息,从而错误地将其自身标识为原始项目中的元素。

我通过查看目录的属性,选择SVN信息并查看资源URL来发现问题。我通过删除复制目录的隐藏.svn目录并刷新项目来解决此问题。红色的感叹号消失了,我能够正确检查目录及其内容。


4

我所做的事情很奇怪,但是以某种方式解决了问题。选择任何项目,然后对build.properties文件进行伪编辑(例如,添加和删除空格然后保存文件)。清理并重建工作区中的项目。

希望这能解决您的一些问题。


2

确保您没有任何未定义的类路径变量(例如M2_REPO)。


2

我有同样的问题,安德鲁是正确的。检查您的类路径变量“ M2_REPO”。它可能指向本地Maven存储库的无效位置。

在我的情况下,我mvn eclipse:eclipse在命令行上使用此插件设置M2_REPO类路径变量。Eclipse在我的主目录中找不到我的maven settings.xml,因此错误地是M2_REPO类路径变量。我的解决方案是重新启动eclipse,它获取了我的settings.xml并删除了项目中的红色惊叹号。

我从这个人那里获得了更多信息:http : //www.mkyong.com/maven/how-to-configure-m2_repo-variable-in-eclipse-ide/


2

以下是Steve Hansen Smythe给出的对我有用的解决方案。我只是在这里粘贴。谢谢史蒂夫。

“我发现了另一个可能出现红色感叹号的情况。我将一个目录从一个项目复制到另一个项目。此目录包括一个隐藏的.svn目录(原始项目已提交给版本控制)。当我检查新项目时进入SVN,复制的目录仍然包含旧的SVN信息,从而错误地将其自身标识为原始项目中的元素。

我通过查看目录的属性,选择SVN信息并查看资源URL来发现问题。我通过删除复制目录的隐藏.svn目录并刷新项目来解决此问题。红色的感叹号消失了,我能够正确检入目录及其内容。”


0

以下是给我使用的解决方案:

我选择了特定的项目>右键单击>构建路径>配置构建路径>库>我注意到JRE系统库正在显示(Unbound)。

选择该库>单击删除>单击应用>单击添加库> JRE系统库>下一步>默认工作区JRE>单击完成>应用>确定。

现在您将在项目中看不到这些惊叹号图标。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.