如何修复“更新Maven项目”中的错误。不支持IClasspathEntry kind=4?

我在STS中导入了maven项目,当我运行更新更新项目时,我收到:

"Updating Maven Project". Unsupported IClasspathEntry kind=4

有什么解决办法吗?

228671 次浏览

这个问题已经在m2e 1.5.0中修复,该版本可用于Eclipse Kepler(4.3)和Luna (4.4)

请参见https://bugs.eclipse.org/bugs/show_bug.cgi?id=374332#c14

这个问题是由于STS (Spring IDE/Eclipse),以及Eclipse和其他基于Eclipse的IDE使用m2e(clipse)插件,但是Eclipse: Eclipse可能已经在项目上运行了。当m2e遇到"var" .classpath条目时,它抛出此错误。

更新站点在以下url指定:
http://eclipse.org/m2e/m2e-downloads.html < / p >

如果你因为任何原因不能使用m2e 1.5.0,那么:

  1. 禁用项目的maven属性(通过右键菜单)

  2. 运行mvn eclipse:clean(当你的项目在STS/eclipse中open时)。根据时间的不同,您可能需要在重新启用maven特性之前对项目进行一两次刷新。您应该能够看到您的项目已经失去了Maven的特性。(eclipse:clean目标只是删除了.project.classpath.settings/文件/目录。你也可以删除这些文件(同样是当项目打开),而不是运行mvn eclipse:clean。)

  3. 重新启用maven属性 (大多数情况下,可以在包资源管理器窗格中右键单击有问题的项目,然后选择“配置”->“转换为Maven项目”)

如果更新命令用于用于Clover代码覆盖的项目,也会抛出此错误。

解决此场景: 取消要更新的项目文件夹。 运行maven更新,然后再次运行工具进行代码覆盖

我试过马可的舞步,但运气不好。相反,如果你只是从他提供的链接中获得最新的m2e插件,然后逐个右键单击每个项目-> Maven ->更新依赖项,错误仍然会弹出,但问题已经解决。也就是说,警告在Markers视图中消失了。在将一些项目导入到SpringSource Tool Suite (STS)后,我遇到了这个问题。当我返回Eclipse Juno安装时,警告正在显示。看到我已经安装了m2e 1.1,我尝试马可的步骤无效。然而,获得最新版本可以解决这个问题。

  1. 确保您正在运行的m2e(clipse)插件的版本至少为1.1.0

  2. 关闭maven项目-右键单击“关闭项目”

  3. 手动删除。classpath文件中所有带有kind="var"的classpathentry
  4. 开放项目

  1. 删除maven项目
  2. 手动删除.classpath 4重新导入项目

你有没有试过:

  1. 如果您有导入项目到eclipse 4,请删除它。
  2. 在maven consol中,运行:mvn eclipse:clean
  3. Eclipse 4: File -> Import -> Maven ->现有Maven项目
  1. 右键单击项目,选择Maven -> Remove Maven Nature。

  2. 打开你的终端,进入你的项目文件夹并执行mvn eclipse:clean

  3. 右键单击您的项目,选择“配置->转换为Maven项目”

现在你的“Unsupported IClasspathEntry kind=4 Eclipse Scala”消失了。

我无法让mvn eclipse:clean等与开普勒一起工作。

然而,我改变了创建和扩展变量,只使用eclipse类路径中的外部jar。这反映在我的.classpath中没有var。

这纠正了问题。我更新了Maven。

看到所有其他答案。我找到了一个更简单的方法。

我只是删除了.classpath(用eclipse编辑)中包含var的所有行,并使用maven ->更新项目而没有出现错误。

有时候,即使重新导入Maven项目也不能工作。在eclipse中正确地更新项目并不是一个确定的过程。 我发现唯一100%安全的过程是:

  1. 禁用Maven Nature,运行mvn eclipse:clean,重新启动,交叉手指,祈祷 3次。
  2. 如果这不起作用,删除项目,运行mvn eclipse:clean,重新导入refresh, pray和使用原力
  3. 如果这仍然不工作,重新启动Eclipse,或者更好的电脑。在等待重启的时候,你可以做一个随机的捐赠来修复你的Karma。重复步骤2,不要忘记祈祷和控制你的愤怒。愤怒导致仇恨。仇恨导致痛苦。
  4. 试试这个帖子里的其他答案。在放弃之前,你可能需要至少尝试三次。
  5. 格式你的电脑,重新安装Eclipse和Maven。不用再祈祷了,反正诸神都恨你
  6. 删除你的git项目,燃烧存储远程存储库的物理驱动器,并从头开始写你的项目。
  7. 找一个时间机器,回到过去,说服自己去从事另一种非编程的职业,或者至少避免Java

此问题(https://bugs.eclipse.org/394042)已在m2e 1.5.0中修复,该版本可用于Eclipse Kepler和Luna:

http://download.eclipse.org/technology/m2e/releases/1.5

如果你也使用m2e-wtp,你还需要安装m2e-wtp 1.1.0:

http://download.eclipse.org/m2e-wtp/releases/luna/1.1

从开普勒升级到卢娜对我来说很管用。

我刚刚为Java 1.8支持添加了一些组件。似乎它们不像我想的那样兼容,或者是我把它们混错了。这真的引起了很多问题。尝试更新系统时报告错误,因为它们无法满足某些依赖项。Maven升级不起作用。我尝试了很多东西。

因此,如果没有理由避免升级,只需将luna存储库添加到可用的软件站点(luna http://download.eclipse.org/releases/luna/)并“检查更新”。最好所有的组件都使用相同的版本,并且有一些不错的新功能。

我尝试了这里提到的所有步骤和类似的问题,但不能解决这个问题。我既不能解决问题,也不能更新我的m2eclipse。所以我安装了Eclipse Luna,它解决了我的问题……尽管这意味着我必须花45分钟来配置我的工作空间中的所有环境。

< p >试 mvn clean install eclipse:在DOS命令提示符上执行eclipse -Dwtpversion=2.0命令。 暗示你是因为,这招对我很管用!!< / p >

我使用Eclipse 4.3.2 (Kepler)和M2E 1.4。X和摸索了好几次这个问题!

在我的情况下,“mvn eclipse:eclipse”命令还生成Checkstyle, PMD和Findbugs配置,所以“mvn eclipse:clean”对我没有帮助,因为它会再次删除所有这些配置文件。

对我来说,最好的解决办法就是删除所有。”类路径”文件:

find . -name ".classpath" -delete

然后将项目导入eclipse。

在导入项目之前,它应该转换为eclipse项目 MVN eclipse: eclipse 然后我发现以下错误。 在“导入Maven项目”期间发生了内部错误。不支持IClasspathEntry kind=4

其中是M2E不识别并因此抛出错误的值kind = "var"。

现在输入。 MVN eclipse: clean

现在在eclipse中刷新项目或重新导入。