myeclipse an error has occurred see the log file

解决MyEclipse 8.0 升级至 8.5 无法启动的问题

解决办法:

修改 config.ini,把这俩参数给改了

eclipse.product=com.genuitec.myeclipse.product8.ide
osgi.splashPath=platform\:/base/plugins/com.genuitec.myeclipse.product8

改为:

eclipse.product=com.genuitec.myeclipse.product85.ide
osgi.splashPath=platform\:/base/plugins/com.genuitec.myeclipse.product85

OK!!

前两天更新MyEclipse的SVN插件的时候提示可以从8.0更新到8.5,于是很Happy地点了更新。

当时也准备关闭才更新的,也没注意是否更新成功,今天再次启动,提示Message并无法启动......@_@

还好,无法启动有log看:

1. !SESSION 2010-03-29 00:39:45.734 -----------------------------------------------
2. eclipse.buildId=unknown
3. java.version=1.6.0_13
4. java.vendor=Sun Microsystems Inc.
5. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=zh_CN
6. Command-line arguments: -os win32 -ws win32 -arch x86
7.
8. !ENTRY org.eclipse.equinox.app 0 0 2010-03-29 00:40:23.281
9. !MESSAGE Product com.genuitec.myeclipse.product8.ide could not be found.
10.
11. !ENTRY org.eclipse.equinox.p2.repository 4 0 2010-03-29 00:40:24.250
12. !MESSAGE ProvisioningEventBus could not be obtained. Metadata caches may not be cleaned up properly.
13.
14. !ENTRY org.eclipse.osgi 4 0 2010-03-29 00:40:31.421
15. !MESSAGE Application error
16. !STACK 1
17. java.lang.RuntimeException: No application id has been found.
18. at org.eclipse.equinox.internal.app.EclipseAppContainer.startDefaultApp(EclipseAppContainer.java:236)
19. at org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:29)
20. at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
21. at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
22. at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
23. at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
24. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
25. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
26. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
27. at java.lang.reflect.Method.invoke(Method.java:597)
28. at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
29. at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
30. at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

!SESSION 2010-03-29 00:39:45.734 ----------------------------------------------- eclipse.buildId=unknown java.version=1.6.0_13 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=zh_CN Command-line arguments: -os win32 -ws win32 -arch x86 !ENTRY org.eclipse.equinox.app 0 0 2010-03-29 00:40:23.281 !MESSAGE Product com.genuitec.myeclipse.product8.ide could not be found. !ENTRY org.eclipse.equinox.p2.repository 4 0 2010-03-29 00:40:24.250 !MESSAGE ProvisioningEventBus could not be obtained. Metadata caches may not be cleaned up properly. !ENTRY org.eclipse.osgi 4 0 2010-03-29 00:40:31.421 !MESSAGE Application error !STACK 1 java.lang.RuntimeException: No application id has been found. at org.eclipse.equinox.internal.app.EclipseAppContainer.startDefaultApp(EclipseAppContainer.java:236) at org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:29) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl<wbr>.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl<wbr>.invoke(NativeMethodAccessorImpl<wbr>.java:39) at sun.reflect.DelegatingMethodAccessor<wbr>Impl.invoke(DelegatingMethodAccessor<wbr>Impl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

应用程序错误,是一个RuntimeException,应用程序ID没找到。

看第二行,eclipse.buildId=unknown

再看看其余两个Msg

com.genuitec.myeclipse.product8.ide找不到

ProvisioningEventBus无法获得,元数据缓存可以没有清理好。

估想着就是Myeclipse.product8.ide找不到的问题,找找看吧。

在MyEclipse安装根目录有myeclipse.ini
view plaincopy to clipboardprint?

1. -startup
2. ../8.0GACommonDirectory/plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
3. --launcher.library
4. ../8.0GACommonDirectory/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
5. -install
6. D:/MyEclipse/MyEclipse8.0GA
7. -vm
8. D:/MyEclipse/8.0GACommonDirectory/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/bin/client/jvm.dll
9. -configuration
10. configuration
11. -vmargs
12. -Xmx512m
13. -XX:MaxPermSize=256m
14. -XX:ReservedCodeCacheSize=64m

-startup ../8.0GACommonDirectory/plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar --launcher.library ../8.0GACommonDirectory/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519 -install D:/MyEclipse/MyEclipse8.0GA -vm D:/MyEclipse/8.0GACommonDirectory/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/bin/client/jvm.dll -configuration configuration -vmargs -Xmx512m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=64m

startup目标包有了

launcher.library的目标文件夹也有了

jvm就不用看了,运行都运行不了怎么来的错误提示(其实启动包和运行lib也一样,不过就是不放心,顺便看一眼)

应该是配置的问题,就在安装目录下configuration文件夹里有个config.ini
view plaincopy to clipboardprint?

1. #Generated by Pulse at Fri Mar 26 15:11:06 CST 2010
2. #Fri Mar 26 15:11:06 CST 2010
3. com.genuitec.pulse.client.handshake.id=******
4. org.eclipse.update.reconcile=false
5. eclipse.p2.profile=com.poweredbypulse.profile-0-rb-578452
6. osgi.instance.area.default=@user.home/Workspaces/MyEclipse 8.0
7. osgi.framework=file\:../8.0GACommonDirectory/plugins/org.eclipse.osgi_3.5.1.R35x_v20090827.jar
8. com.genuitec.pulse.client.credentials=******
9. com.genuitec.pulse.client.blueprint.id=rmb-478634
10. com.genuitec.pulse.common.server.url=https\://www.poweredbypulse.com\:443
11. osgi.bundles=reference\:file\:org.eclipse.equinox.simpleconfigurator_1.0.102.v200911181800.jar@1\:start
12. org.eclipse.equinox.simpleconfigurator.configUrl=file\:org.eclipse.equinox.simpleconfigurator/bundles.info
13. eclipse.product=com.genuitec.myeclipse.product8.ide
14. osgi.splashPath=platform\:/base/plugins/com.genuitec.myeclipse.product8
15. eclipse.p2.data.area=file\:/C\:/Program Files/Genuitec/Common/configuration/
16. osgi.bundles.defaultStartLevel=4
17. osgi.framework.extensions=
18. com.genuitec.pulse.client.basedir.location.override=C\:\\Program Files\\Genuitec

#Generated by Pulse at Fri Mar 26 15:11:06 CST 2010 #Fri Mar 26 15:11:06 CST 2010 com.genuitec.pulse.client.handshake.id=****** org.eclipse.update.reconcile=false eclipse.p2.profile=com.poweredbypulse.profile-0-rb-578452 osgi.instance.area.default=@user.home/Workspaces/MyEclipse 8.0 osgi.framework=file\:../8.0GACommonDirectory/plugins/org.eclipse.osgi_3.5.1.R35x_v20090827.jar com.genuitec.pulse.client.credentials=****** com.genuitec.pulse.client.blueprint.id=rmb-478634 com.genuitec.pulse.common.server.url=https\://www.poweredbypulse.com\:443 osgi.bundles=reference\:file\:org.eclipse.equinox.simpleconfigurator_1.0.102.v200911181800.jar@1\:start org.eclipse.equinox.simpleconfigurator.configUrl=file\:org.eclipse.equinox.simpleconfigurator/bundles.info eclipse.product=com.genuitec.myeclipse.product8.ide osgi.splashPath=platform\:/base/plugins/com.genuitec.myeclipse.product8 eclipse.p2.data.area=file\:/C\:/Program Files/Genuitec/Common/configuration/ osgi.bundles.defaultStartLevel=4 osgi.framework.extensions= com.genuitec.pulse.client.basedir.location.override=C\:\\Program Files\\Genuitec

com.genuitec.pulse.client.handshake.id 和 com.genuitec.pulse.client.credentials有关客户信息,这就用******注掉了,是有信息的

很醒目的

eclipse.product=com.genuitec.myeclipse.product8.ide,立刻搜索了一下。

咦?D盘MyEclipse的安装目录下有一个\8.0GACommonDirectory\plugins \com.genuitec.myeclipse.product8_8.0.0.me200911192201

但文件夹名却与配置文件中的eclipse.product的配置信息不对应,其它地方就再也找不到product对应的文件夹或者包了,看来应该有映射文件或者注册信息

再看看config.ini

org.eclipse.equinox.simpleconfigurator.configUrl对应了一个bundles.info

bundles.info???正好了....去找出来看看(这文件太大,就不贴出来了)

用普通文档编辑器就能打开,正好是插件名对应插件包或文件夹的配置文件。

在里面搜索com.genuitec.myeclipse.product8.ide,没找到!

缩小搜索范围吧,找com.genuitec.myeclipse.product8,找到两目标,但是却不是product8,而是 com.genuitec.myeclipse.product85

一想,哦!正好是8.0更新8.5之后启动不起来的,看来自动升级没把config给改过来。

这.....莫非是MyEclipse的Bug?

不管是不是Bug,还得靠MyEclipse做东西的,赶紧修改config.ini,把这俩参数给改了

eclipse.product=com.genuitec.myeclipse.product85.ide
osgi.splashPath=platform\:/base/plugins/com.genuitec.myeclipse.product85

保存配置文件,重新启动.....Bingo!体验8.5去喽!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值