154

每当我尝试构建我的项目时,为什么我会收到“JPA 项目更改事件处理程序(等待)”。

我的工作区中有一些 JPA 项目,构建我的项目需要很多时间。它还导致 GC 超出限制,为 Eclipse 分配了 6GB 的堆空间

我目前正在使用开普勒。Helios 中没有出现此问题。

上述错误有一些 BugZilla 条目,但我可以看到它们已修复。但在 4.3.1 中不可用?

上述问题的任何解决方案/解决方法?

谢谢

4

11 回答 11

171

我遇到了同样的问题,我最终发现这似乎是DALI (Eclipse Java Persistence Tools)中的一个已知错误,因为至少 eclipse 3.8 可能导致java 编辑器中的保存操作非常缓慢

由于这在 Kepler (20130614-0229) 中尚未完全解决,并且因为我的 eclipse 中不需要 JPT/DALI,我最终手动删除了org.eclipse.jpt功能和插件。

我所做的是:

1.) 退出日食

2.) 转到我的 Eclipse 安装目录

cd eclipse

并执行以下步骤:

*尼克斯:

mkdir disabled
mkdir disabled/features disabled/plugins

mv plugins/org.eclipse.jpt.* disabled/plugins
mv features/org.eclipse.jpt.* disabled/features

视窗:

mkdir disabled
mkdir disabled\features 
mkdir disabled\plugins

move plugins\org.eclipse.jpt.* disabled\plugins
for /D /R %D in (features\org.eclipse.jpt.*) do move %D disabled\features

3.) 重启日食。

启动后和首次使用时,eclipse 可能会警告您需要重新配置您的 content-assist。在您的首选项对话框中执行此操作。

完毕。

卸载 DALI/JPT 后,我的 eclipse 感觉又好了。保存文件时不再阻塞 UI 并等待几秒钟。

于 2013-11-22T10:28:50.713 回答
73

不知道为什么,我的 Neon Eclipse 还是有这个问题,好像很多人说的 Mars 版本没有修复。

我发现使用命令太麻烦,我通过Eclipse安装管理器删除了插件。

霓虹灯:[帮助 > 安装详情 > 已安装的软件]

氧气:[首选项 > 安装/更新 > 已安装的软件]

只需选择插件“Dali Java Persistence Tools -JPA Support”并点击“卸载”即可。请注意我下面的屏幕没有,因为我已经卸载了。

在此处输入图像描述

于 2016-08-29T09:09:33.163 回答
35

我在 Neon.2 中仍然有同样的问题 我的解决方案是禁用 JPA 配置器。

打开 Eclipse 首选项(不是项目首选项!)。转到 Maven --> Java EE Integration 并禁用 JPA 配置器。我还禁用了 JAX-RS 配置器和 JSF 配置器。

从那时起,JPA 项目变更事件处理程序不再出现。

如果更改没有立即生效,请重新启动 Eclipse。

于 2017-09-11T14:14:14.900 回答
23

我已禁用(未选中)JPA 验证器。

现在,每当我保存文件时,它只显示 JPA Project Change Event Handler 的一项任务,而 JPA Java Change Event Handler 只显示 2 或 3 个任务。

最重要的是,UI 挂起问题得到了解决。

请参阅以下屏幕截图以了解我所做的设置:

在此处输入图像描述

于 2016-12-07T10:22:12.703 回答
14

还有另一种禁用项目 JPA 工具的方法,不需要卸载 JPA 功能/插件。我在 https://bugs.eclipse.org/bugs/show_bug.cgi?id=386171 中提到的 https://github.com/Jasig/uPortal 项目上进行了测试,声称类似的问题:

  1. 切换到 Eclipse Projects Explorer View 以查看启用了 JPA Facet 的项目(应该有“JPA Content”节点);
  2. 选择具有“JPA 内容”节点的感兴趣的项目,然后从上下文菜单中选择属性或按 Alt+Enter 以显示项目的属性对话框;
  3. 在带有类别的树中选择“Project Facets”节点;
  4. 清除项目构面列表中的 JPA 复选框,然后按 OK。

在为上面的 uportal-war 项目表单存储库禁用 JPA 方面后,我在 Eclipse 进度视图中看不到任何与 JPA 相关的作业。

于 2015-06-13T00:24:24.777 回答
8

对mwhs对windows部分的回答进行了微小的修正......

移动命令不适用于 .\features 文件夹,因为...好吧,坦率地说是因为 Windows 迟缓(您可以在文件上使用带有“移动”的通配符,但显然通配符 + 文件夹 == 忽略该命令)。无论如何,这应该可以替代他回答中为步骤 2 提供的 windows 片段。

作为批处理文件:

@echo off
set eclipse_dir=C:\eclipse_luna

mkdir disabled
mkdir disabled\features 
mkdir disabled\plugins

move plugins\org.eclipse.jpt.* disabled\plugins
for /f %%i in ('dir "%eclipse_dir%\features\org.eclipse.jpt.*" /ad /b') do (
    move "%eclipse_dir%\features\%%i" "%eclipse_dir%\disabled\features\%%i"
)
于 2015-01-20T15:49:14.547 回答
2

好吧,这是7年前最初提出的……所以让我给出一个非常稳定的答案。

我正在使用eclipse 2021-09(是的..几天前刚刚发布的那个)

关闭 JPA 项目更改事件处理程序(等待中)

  1. 确保没有运行 ecrise 的实例。请从 windows > preference > Validations 暂停 JPA 的验证

  2. 进入【安装目录】\eclipse\configuration\org.eclipse.equinox.simpleconfigurator

  3. 使用 notepad++ 或 wordpad 或 notepad编辑bundles.info

  4. 您必须删除包含 org.[something].jpa 的行(对不起,我不记得确切的名称:P)并保存文件。

  5. 启动 eclipse 就可以了,你不会在你的 elipse 控制台中看到那些麻烦的“JPA Project Change Event Handler (waiting)”消息。

于 2021-09-17T14:39:28.557 回答
2

eclipse photon 的解决方案似乎是:

  1. 打开 ./eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info
  2. 删除以 org.eclipse.jpt 开头的行(可能只删除 org.eclipse.jpt.jpa)
于 2018-12-20T09:49:16.277 回答
2

另外,如果你找不到你的 eclipse 目录。因为,我在 mac 上遇到了这样的问题,我们可以记住 eclipse 正在使用 OSGi,所以我们可以转到目标平台并禁用上面描述的功能/插件:org.eclipse.jpt.* 在此处输入图像描述

于 2018-05-31T21:36:12.430 回答
0

新的 Eclipse 似乎解决了这个问题。Java Enterprise 套件不提供该插件。

于 2019-10-10T14:39:35.790 回答
-1

这个对我有用。日食 2021-09。您必须删除所有包含 jpa 的行。

于 2021-09-23T00:46:40.337 回答