在Eclipse中安装插件时出错

Der*_*erk 9 eclipse eclipse-plugin

当我尝试在Eclipse中安装插件时,我收到这些错误消息

注册表事件调度程序

Error notifying registry change listener.
Error notifying registry change listener.
Invalid registry object
Error notifying registry change listener.
Invalid registry object
Error notifying registry change listener.
Invalid registry object
Error notifying registry change listener.
Invalid registry object
Error notifying registry change listener.
Invalid registry object
Run Code Online (Sandbox Code Playgroud)

有人知道这个问题的原因是什么吗?谢谢

编辑:

我看到Eclipse .log文件也有很多新的堆栈跟踪

第一个是

java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=nl_NL
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product

!ENTRY org.eclipse.equinox.registry 4 2 2010-05-06 21:04:31.236
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.equinox.registry".
!STACK 0
org.eclipse.core.runtime.InvalidRegistryObjectException: Invalid registry object
    at org.eclipse.core.internal.registry.TemporaryObjectManager.getObject(TemporaryObjectManager.java:98)
    at org.eclipse.core.internal.registry.BaseExtensionPointHandle.getExtensionPoint(BaseExtensionPointHandle.java:106)
    at org.eclipse.core.internal.registry.BaseExtensionPointHandle.getContributor(BaseExtensionPointHandle.java:45)
    at org.eclipse.core.internal.registry.BaseExtensionPointHandle.getNamespace(BaseExtensionPointHandle.java:37)
    at org.eclipse.ui.internal.PopupMenuExtender.registryChanged(PopupMenuExtender.java:520)
    at org.eclipse.core.internal.registry.ExtensionRegistry$2.run(ExtensionRegistry.java:921)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.registry.ExtensionRegistry.processChangeEvent(ExtensionRegistry.java:919)
    at org.eclipse.core.runtime.spi.RegistryStrategy.processChangeEvent(RegistryStrategy.java:260)
    at org.eclipse.core.internal.registry.osgi.ExtensionEventDispatcherJob.run(ExtensionEventDispatcherJob.java:50)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Run Code Online (Sandbox Code Playgroud)

EDIT2:

当我重新启动Eclipse时,我得到一个"安装连接器"窗口,但当我选择一个连接器并单击"完成"时,没有任何反应,Eclipse日志中出现"未处理的事件循环异常"

EDIT3:

我尝试过Subclipse而不是Subversive,但这会产生这些错误

Failed to load JavaHL Library.
These are the errors that were encountered:
no libapr-1 in java.library.path
no libapriconv-1 in java.library.path
C:\Program Files (x86)\Zend\Core\bin\libeay32.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
C:\Program Files (x86)\Zend\Core\bin\ssleay32.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
no libaprutil-1 in java.library.path
no libsvn_subr-1 in java.library.path
no libsvn_delta-1 in java.library.path
no libsvn_diff-1 in java.library.path
no libsvn_wc-1 in java.library.path
no libsvn_fs-1 in java.library.path
no libsvn_repos-1 in java.library.path
no libsvn_ra-1 in java.library.path
no libsvn_client-1 in java.library.path
no libsvnjavahl-1 in java.library.path
no svnjavahl-1 in java.library.path
no svnjavahl in java.library.path
java.library.path = C:\Windows\system32;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Zend\Core\bin;C:\Program Files (x86)\Zend\Core\oic;C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\Program Files\TortoiseSVN\bin;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files\Java\jdk1.6.0_20\bin
Run Code Online (Sandbox Code Playgroud)

安装的Eclipse版本是否有可能与另一个已安装的Eclipse版本或Zend Studio冲突?

小智 7

这是x64 Java的问题.

使用x64 java,您需要使用支持x64的JavaHL

这是官方FAQ http://subclipse.tigris.org/wiki/JavaHL#head-0ae839721445e3f59d10a128ec9439d4f4988d5f

我有相同的安装,它在FAQ的步骤后工作

编辑:您可能还需要编辑PATH变量(至少在Windows中)以包含上面列出binsubclipse FAQ中推荐的SlikSVN安装文件夹.


Von*_*onC 1

您在全新安装的 Eclipse 中观察到这一点吗?
对于您的 Eclipse 实例,您是否尝试再次重新启动iot?(仍然看到错误?)

因为当多个插件已经存在时,该线程提到AJDT但也可以应用于其他插件):

该错误意味着有人保留了不再存在的扩展注册表对象的句柄。

最有可能AJDT(或它所依赖的捆绑包之一)维护注册表对象的持久缓存,例如扩展或扩展点。
更新捆绑包时,会在后台卸载该捆绑包的“旧”版本,删除其所有注册表元素,并在安装新版本捆绑包时添加新的注册表元素。
如果包缓存了扩展/扩展点的句柄并且没有对注册表事件做出反应,那么它最终会得到无效的句柄。