如何处理Eclipse RCP程序发布后提示找不到application id的问题?
这两天在搞一个Eclipse RCP插件程序,程序在eclipse环境下运行完全没有问题,可是在我创建product文件发布成独立运行包后,在windows环境却运行不起来,查看log,显示如下错误:
!SESSION 2006-10-23 20:23:35.210 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.5.0_08
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.update.configurator 2006-10-23 20:23:36.111
!MESSAGE Plugin does not have a valid identifier: plugins/****.jar
!ENTRY org.eclipse.update.configurator 2006-10-23 20:23:36.111
!MESSAGE Plugin does not have a valid version: plugins/****.jar
!ENTRY org.eclipse.update.configurator 2006-10-23 20:23:36.572
!MESSAGE Could not install bundle plugins/****.jar Error converting plugin at E:/download/eclipse/plugins/****.jar.
!ENTRY org.eclipse.core.runtime 2006-10-23 20:23:37.473
!MESSAGE Product ****.product could not be found.
!ENTRY org.eclipse.osgi 4 0 2006-10-23 20:23:37.473
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:56)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
at org.eclipse.core.launcher.Main.run(Main.java:977)
at org.eclipse.core.launcher.Main.main(Main.java:952)
百思不得其解,调试了一个下午和一个晚上,搜索google也没有结果,实在没办法,最后只能新建了一个干净的rcp项目,发布运行正常,因此确定是我的插件哪里配置有问题了,通过对照plugin.xml,一页一页测试过去,最后终于在Build页找到了原因,原来在Binary Build Section里面,我没有把META-INF选项选上,这样发布的时候Eclipse不会将META-INF目录下的MANIFEST.MF打包,导致找不到application id,晕,勾上以后重新发布,问题解决。
本文地址:http://www.45fan.com/dnjc/67856.html