`
亚当爱上java
  • 浏览: 706019 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

AbstractBundle$BundleStatusException eclipse打开后自动关闭

阅读更多
最近在开发的android项目中安装了一个插件JD-Eclipse,用于反编译android项目,安装成功后,重启eclipse,打开主界面,过几秒后eclipse自动关闭。再重启,还是这样。
查看错误日志,显示如下:
!ENTRY org.eclipse.osgi 2 0 2011-02-27 13:44:07.375
!MESSAGE While loading class "com.android.ide.eclipse.adt.internal.sdk.Sdk", thread "Thread[Worker-2,5,main]" timed out waiting (5000ms) for thread "Thread[org.eclipse.jdt.internal.ui.text.JavaReconciler,1,main]" to finish starting bundle "com.android.ide.eclipse.adt_0.9.9.v201009221407-60953 [744]". To avoid deadlock, thread "Thread[Worker-2,5,main]" is proceeding but "com.android.ide.eclipse.adt.internal.sdk.Sdk" may not be fully initialized.
!STACK 0
org.osgi.framework.BundleException: State change in progress for bundle "reference:file:plugins/com.android.ide.eclipse.adt_0.9.9.v201009221407-60953.jar" by thread "org.eclipse.jdt.internal.ui.text.JavaReconciler".
at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1077)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:282)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:417)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at com.android.ide.eclipse.adt.internal.project.AndroidClasspathContainerInitializer.allocateAndroidContainer(Unknown Source)
at com.android.ide.eclipse.adt.internal.project.AndroidClasspathContainerInitializer.initialize(Unknown Source)
at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:2707)
at org.eclipse.jdt.internal.core.JavaModelManager$11.run(JavaModelManager.java:2613)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975)
at org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(JavaModelManager.java:2653)
at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1845)
at org.eclipse.jdt.core.JavaCore.initializeAfterLoad(JavaCore.java:3463)
at org.eclipse.jdt.internal.ui.InitializeAfterLoadJob$RealJob.run(InitializeAfterLoadJob.java:35)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: org.eclipse.osgi.framework.internal.core.AbstractBundle$BundleStatusException
... 24 more

Root exception:
org.eclipse.osgi.framework.internal.core.AbstractBundle$BundleStatusException
at org.eclipse.osgi.framework.internal.core.AbstractBundle.beginStateChange(AbstractBundle.java:1077)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:282)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:417)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at com.android.ide.eclipse.adt.internal.project.AndroidClasspathContainerInitializer.allocateAndroidContainer(Unknown Source)
at com.android.ide.eclipse.adt.internal.project.AndroidClasspathContainerInitializer.initialize(Unknown Source)
at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:2707)
at org.eclipse.jdt.internal.core.JavaModelManager$11.run(JavaModelManager.java:2613)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1975)
at org.eclipse.jdt.internal.core.JavaModelManager.initializeAllContainers(JavaModelManager.java:2653)
at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1845)
at org.eclipse.jdt.core.JavaCore.initializeAfterLoad(JavaCore.java:3463)
at org.eclipse.jdt.internal.ui.InitializeAfterLoadJob$RealJob.run(InitializeAfterLoadJob.java:35)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)


找原因找了半天,原来纯碎是虚拟内存不足。修改eclipse的eclipse.init配置文件,增大虚拟内存。配置文件内容如下:
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
512M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms80m
-Xmx512m

这下好了,再也不自动关闭了。
分享到:
评论

相关推荐

    myeclipse 10.6 破解

    安装JDK,运行cracker.jar ... ... ... 目的是把生成的LICENSE_KEY, ... replacing file [${eclipse_home}\plugins\com.genuitec.eclipse.core_10.5.0.me201206170059.jar] and create bakFile [${eclipse_home}\plugins\...

    Eclipse打开Keil工程图解教程

    在本文中,我们将深入探讨如何使用Eclipse IDE打开并管理Keil工程。Eclipse是一款流行的开源集成开发环境,广泛用于Java和其他编程语言的开发。而Keil是ARM微控制器开发的首选工具,尤其适用于嵌入式系统开发。将这...

    eclipse 自动关闭的问题

    ### Eclipse自动关闭问题详解 #### 一、问题概述 在使用Eclipse开发工具的过程中,有时会遇到Eclipse无故自动关闭的情况。这种情况不仅打断了工作流程,还可能导致未保存的工作丢失,给开发者带来不便。因此,了解...

    eclipse打开文件夹插件

    根据开源的openextern修改而来,直接放在eclipse\dropins目录下面即可。 重启Eclipsep之后,右键菜单里即添加了Open Shell和Open Folder两个功能。 也可以在工具栏里添加。

    解决eclipse自动提示反应慢的方法

    Eclipse 自动提示反应慢解决方法总结 Eclipse 是一个功能强大且广泛使用的集成开发环境(IDE),它提供了丰富的插件和功能来满足开发者的需求。然而,在使用 Eclipse 时,许多开发者可能会遇到自动提示反应慢的问题...

    eclipse打开目录插件

    重启Eclipse后,插件就会自动加载并出现在Eclipse的界面中。如果需要自定义设置,可以在Eclipse的首选项或插件配置中找到相应的选项。 此外,这个插件可能还支持与其他Eclipse功能的集成,比如与项目导航器、搜索...

    Eclipse XML自动提示DTD文件下载

    标题中的“Eclipse XML自动提示DTD文件下载”指的是在使用Eclipse IDE进行XML开发时,如何获取并配置DTD(Document Type Definition)文件以实现代码自动提示功能。这通常涉及到Eclipse的XML编辑器和XML Schema/DTD...

    Eclipse自动智能提示

    本文将深入探讨“Eclipse自动智能提示”这一功能,它极大地提升了开发效率,通过理解其工作原理和配置,我们可以更好地利用这一特性。 Eclipse的自动智能提示,也称为代码补全或内容辅助,是它的一大亮点。当你在...

    解决Eclipse3.6中Android代码自动补全卡死

    4. **测试修复效果**:启动Eclipse后,打开Android项目并尝试使用代码补全功能,看是否还存在卡死现象。如果问题已解决,那么问题就出在JDT核心组件上;如果问题依旧,可能需要进一步检查其他可能的原因,如ADT插件...

    解决Eclipse自动补全卡死的问题内附说明[【完整版】

    然而,当IDE出现性能问题,如Eclipse的自动补全卡死现象时,这将严重影响开发者的编程体验。本文将深入探讨如何解决Eclipse自动补全卡死的问题,帮助开发者恢复流畅的编码工作。 Eclipse是一款广泛应用的开源Java ...

    eclipse 打开到文件夹插件 天涯浪子

    eclipse 打开到文件夹插件,里边是两个插件合成的,easyexplore----在右键菜单上打开文件夹命令,openexplorer----像myeclipse一样在工具条上显示一个打开到文件夹的按钮。

    eclipse c_c++自动补全auto activation 自动激活 最新插件

    1. 打开Eclipse,进入`Window` -> `Preferences`。 2. 在左侧的树形菜单中展开`C/C++` -> `Editor` -> `Content Assist`。 3. 在右侧界面中,找到`Auto-Activation`部分,这里可以设置补全的触发字符。默认可能是"....

    eclipse快速打开项目路径

    4. 完成复制后,为了使Eclipse识别新添加的特性或插件,需要重启Eclipse。 一旦Eclipse重新启动,您会发现新添加的特性或插件已经生效。此时,右键点击项目,您可能会发现多出一个“打开文件夹”或“显示在资源管理...

    eclipse 打开文件夹小插件

    标题提到的“eclipse 打开文件夹小插件”就是这样一个插件,它增强了Eclipse对文件系统的操作能力,使开发者可以更便捷地在IDE内部管理项目之外的文件夹。 首先,让我们来了解一下Eclipse中打开文件夹插件的基本...

    Eclipse支持jQuery自动提示.doc

    ### Eclipse支持jQuery自动提示 #### 一、简介 在Web前端开发中,使用Eclipse作为集成开发环境(IDE)能够极大地提高工作效率。特别是在处理复杂的JavaScript代码时,利用Eclipse提供的插件可以实现对jQuery等库的...

    使用eclipse打开当前文件所在文件夹

    Eclipse 中打开当前文件所在文件夹的方法 Eclipse 是一个功能强大且广泛使用的集成开发环境(IDE),它提供了许多功能强大的插件和工具,以提高开发效率和体验性。然而,在 Eclipse 中默认情况下打开当前文件所在...

    eclipse文件打开插件源码

    本示例为大家讲解如何自己动手开发一款“eclipse文件打开插件”,用自己开发的插件去替代OpenExplorer,同时新增了F8快捷键打开文件夹功能。 该源码是“跟着实例学eclipse插件开发--第三篇:数据库文档生成插件”的...

    Eclipse快速打开文件

    本篇文章将深入讲解如何利用Eclipse快速打开和定位文件,以及如何通过给定的"OpenExplorer_1.5.0.v201108051513.jar"插件来增强这一功能。 标题"**Eclipse快速打开文件**"指的是Eclipse中的一项实用技巧,它允许...

    MyEclipse 10.5注册机

    10.5版破解基本上同10.1版,但破解密钥和算法有所变化,经过本人的... replacing file [${eclipse_home}\plugins\com.genuitec.eclipse.core_10.5.0.me201206170059.jar] and create bakFile [${eclipse_home}\plugins\...

    eclipse打开项目所在位置jar包

    2. **查看源码**:如果项目已经配置了源码,你可以直接双击包含源码的jar文件,Eclipse会自动打开对应的源码视图。如果项目没有提供源码,Eclipse将显示编译后的字节码,这对于理解代码逻辑并不直观。 3. **打开...

Global site tag (gtag.js) - Google Analytics