I have a Webproject using maven and when I try to deploy it to Tomcat 7, I get the following message:
Publishing failed
Could not publish to the server.
java.lang.IndexOutOfBoundsException
Could not publish server configuration: myworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\server.xml (The system cannot find the path specified.).
myworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\server.xml (The system cannot find the path specified.)
When I look at the log file of tomcat in 'myworkpace.metadata.logs' I see the following:
!ENTRY org.eclipse.wst.server.core 4 0 2013-11-22 13:36:40.128
!MESSAGE Publishing failed
!SUBENTRY 1 org.eclipse.wst.server.core 4 0 2013-11-22 13:36:40.128
!MESSAGE Could not publish to the server.
!STACK 0
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:338)
at org.eclipse.jdt.internal.compiler.util.Util.getInputStreamAsByteArray(Util.java:498)
at org.eclipse.jdt.core.ToolFactory.createDefaultClassFileReader(ToolFactory.java:269)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.isEJBArchive(JavaEEArchiveUtilities.java:900)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.refineForJavaEE(JavaEEArchiveUtilities.java:606)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.openArchive(JavaEEArchiveUtilities.java:370)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.openBinaryArchive(JavaEEArchiveUtilities.java:290)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper$ArchiveCache.openArchive(JavaEEBinaryComponentHelper.java:612)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.openArchive(JavaEEBinaryComponentHelper.java:470)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.getUniqueArchive(JavaEEBinaryComponentHelper.java:422)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.getArchive(JavaEEBinaryComponentHelper.java:415)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.getJavaEEQuickPeek(JavaEEBinaryComponentHelper.java:98)
at org.eclipse.jst.j2ee.project.JavaEEProjectUtilities.getJ2EEComponentType(JavaEEProjectUtilities.java:273)
at org.eclipse.jst.j2ee.internal.common.exportmodel.JEEHeirarchyExportParticipant.isChildModule(JEEHeirarchyExportParticipant.java:42)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.isChildModule(FlatVirtualComponent.java:367)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.addUsedReferences(FlatVirtualComponent.java:305)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.treeWalk(FlatVirtualComponent.java:235)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.cacheResources(FlatVirtualComponent.java:188)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.fetchResources(FlatVirtualComponent.java:118)
at org.eclipse.wst.web.internal.deployables.FlatComponentDeployable.members(FlatComponentDeployable.java:227)
at org.eclipse.jst.j2ee.internal.deployables.J2EEFlexProjDeployable.members(J2EEFlexProjDeployable.java:267)
at org.eclipse.wst.server.core.internal.ModulePublishInfo.getDelta(ModulePublishInfo.java:407)
at org.eclipse.wst.server.core.internal.ServerPublishInfo.getDelta(ServerPublishInfo.java:366)
at org.eclipse.wst.server.core.internal.Server.getPublishedResourceDelta(Server.java:1574)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.getPublishedResourceDelta(ServerBehaviourDelegate.java:698)
at org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour.getPublishedResourceDelta(TomcatServerBehaviour.java:958)
at org.eclipse.jst.server.tomcat.core.internal.PublishOperation2.publishDir(PublishOperation2.java:137)
at org.eclipse.jst.server.tomcat.core.internal.PublishOperation2.execute(PublishOperation2.java:82)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.performTasks(ServerBehaviourDelegate.java:1335)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:954)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:774)
at org.eclipse.wst.server.core.internal.Server.publishImpl(Server.java:3153)
at org.eclipse.wst.server.core.internal.Server$PublishJob.run(Server.java:345)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
!SUBENTRY 1 org.eclipse.jst.server.tomcat.core 4 0 2013-11-22 13:36:40.128
!MESSAGE Could not publish server configuration: C:\IBM\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\server.xml (The system cannot find the path specified.).
!STACK 0
java.io.FileNotFoundException: myworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\server.xml (The system cannot find the path specified.)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:149)
at org.eclipse.jst.server.tomcat.core.internal.TomcatVersionHelper.publishCatalinaContextConfig(TomcatVersionHelper.java:499)
at org.eclipse.jst.server.tomcat.core.internal.Tomcat70Configuration.publishContextConfig(Tomcat70Configuration.java:674)
at org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour.publishFinish(TomcatServerBehaviour.java:462)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:1011)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:774)
at org.eclipse.wst.server.core.internal.Server.publishImpl(Server.java:3153)
at org.eclipse.wst.server.core.internal.Server$PublishJob.run(Server.java:345)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
If I try to publish again, I only get the first error:
Could not publish to the server.
java.lang.IndexOutOfBoundsException
and in the logs:
!ENTRY org.eclipse.wst.server.core 4 0 2013-11-22 13:41:18.645
!MESSAGE Could not publish to the server.
!STACK 0
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:338)
at org.eclipse.jdt.internal.compiler.util.Util.getInputStreamAsByteArray(Util.java:498)
at org.eclipse.jdt.core.ToolFactory.createDefaultClassFileReader(ToolFactory.java:269)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.isEJBArchive(JavaEEArchiveUtilities.java:900)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.refineForJavaEE(JavaEEArchiveUtilities.java:606)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.openArchive(JavaEEArchiveUtilities.java:370)
at org.eclipse.jst.j2ee.internal.archive.JavaEEArchiveUtilities.openBinaryArchive(JavaEEArchiveUtilities.java:290)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper$ArchiveCache.openArchive(JavaEEBinaryComponentHelper.java:612)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.openArchive(JavaEEBinaryComponentHelper.java:470)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.getUniqueArchive(JavaEEBinaryComponentHelper.java:422)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.getArchive(JavaEEBinaryComponentHelper.java:415)
at org.eclipse.jst.j2ee.internal.componentcore.JavaEEBinaryComponentHelper.getJavaEEQuickPeek(JavaEEBinaryComponentHelper.java:98)
at org.eclipse.jst.j2ee.project.JavaEEProjectUtilities.getJ2EEComponentType(JavaEEProjectUtilities.java:273)
at org.eclipse.jst.j2ee.internal.common.exportmodel.JEEHeirarchyExportParticipant.isChildModule(JEEHeirarchyExportParticipant.java:42)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.isChildModule(FlatVirtualComponent.java:367)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.addUsedReferences(FlatVirtualComponent.java:305)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.treeWalk(FlatVirtualComponent.java:235)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.cacheResources(FlatVirtualComponent.java:188)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.fetchResources(FlatVirtualComponent.java:118)
at org.eclipse.wst.web.internal.deployables.FlatComponentDeployable.members(FlatComponentDeployable.java:227)
at org.eclipse.jst.j2ee.internal.deployables.J2EEFlexProjDeployable.members(J2EEFlexProjDeployable.java:267)
at org.eclipse.wst.server.core.internal.ModulePublishInfo.fillCache(ModulePublishInfo.java:314)
at org.eclipse.wst.server.core.internal.ModulePublishInfo.getDelta(ModulePublishInfo.java:396)
at org.eclipse.wst.server.core.internal.ServerPublishInfo.getDelta(ServerPublishInfo.java:366)
at org.eclipse.wst.server.core.internal.Server.getPublishedResourceDelta(Server.java:1574)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.getPublishedResourceDelta(ServerBehaviourDelegate.java:698)
at org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour.getPublishedResourceDelta(TomcatServerBehaviour.java:958)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.computeDelta(ServerBehaviourDelegate.java:874)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:909)
at org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:774)
at org.eclipse.wst.server.core.internal.Server.publishImpl(Server.java:3153)
at org.eclipse.wst.server.core.internal.Server$PublishJob.run(Server.java:345)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
I tried starting from a clean installation (clean eclipse, clean tomcat and clean workspace), imported the code from CVS, but still the same problem
Anyone got any ideas as to what may be incorrect (or how I could locate the problem)?
EDIT
When I build the project into a WAR-file on another computer and deploy this war file directly to tomcat via the management console, it works.
My guess is that the build must be different somehow...
EDIT2
I removed the complete maven repository. Afer this, I was able to build the project correctly and run it on Tomcat using the exported war-file.
However, I still get the IndexOutOfBoundsException when I try to publish directly from eclipse
EDIT3
After removing the Maven repository a few times, I was able to build and run the project. It seems Maven sometimes gets corrupted.
If others should have this problem, delete the complete Maven directory and run a maven update on each of the projects in the workspace.
The maven repository can be corrupt. It is best to remove the complete repository and update all projects in the workspace.
Although this question has been answered - it was a problem with a corrupt repository, it is possible to determine which jar in your repository is corrupt by deploying the war to Tomcat outside of eclipse.
In my situation Tomcat then reported in its log where the problem lay (guava-13.0.1.jar):
SEVERE: Unable to process Jar entry [com/google/common/collect/package-info.class] from Jar
[jar:file:/C:/Java/tomcat/apache-tomcat-7.0.42/webapps/myapp/WEB-INF/lib/guava-13.0.1.jar!/] for annotations
java.util.zip.ZipException: invalid LOC header (bad signature)
Most probably some jar of your local maven repo that are included in your .war as dependency are corrupted.
As jtsnr suggested, you can deploy your .war outside Eclipse to discover which jar is corrupted. But there is a quicker solution. Just locate the /target dir of your maven project (or just unzip the .war) and locate inside the *.jar files (should be under WEB-INF/lib).
Now, with a simple zip tool (e.g.: 7-Zip) select all and extract. You will receive a prompt for each corrupted file you have: after this, locate the file in your Maven repo and delete the entire version for that file.
In this way, if you have a big repo, you gain a lot of time avoiding to re-download the entire jar ecosystem :)
HTH..
Lets try once the way it is mentioned below. so please delete the previous installation.
Step 1
Create a new Server run time
(Window -> Preferences -> Server -> Runtime Environments).
Step 2
Add Server to Eclipse
(Window -> Show View -> Servers) add a new server configuration (right-click and select New -> Server) but DO NOT ADD ANY PROJECTS TO IT.
Step 3
Open Server Overview page
Double click the new server configuration to bring up the Server Overview page where we set port and time out for the Server.
Step 4
Under Server Locations select Use Tomcat installation. Save.
You should be able to start your server now. Now add your project to the server and you're ready to go.
Related
I am facing this issue with eclipse (Its eclipse Oxygen) I am unable to run a simple Java program
This happen after I modified the project to be a Maven project.
what I tried so far:
I updated the software using (help > check for updates)
deleted the Workspace, and created a new one.
!ENTRY org.eclipse.core.jobs 4 2 2017-12-21 13:15:48.670
!MESSAGE An internal error occurred during: "Launching MailProcessor".
!STACK 0
java.lang.NullPointerException
at org.eclipse.jdt.launching.JavaRuntime.isModularJava(JavaRuntime.java:1043)
at org.eclipse.jdt.launching.JavaRuntime.isModularConfiguration(JavaRuntime.java:1020)
at org.eclipse.jdt.launching.JavaRuntime.computeJREEntry(JavaRuntime.java:2341)
at org.eclipse.m2e.jdt.internal.launch.MavenRuntimeClasspathProvider.computeUnresolvedClasspath(MavenRuntimeClasspathProvider.java:93)
at org.eclipse.jdt.internal.launching.RuntimeClasspathProvider.computeUnresolvedClasspath(RuntimeClasspathProvider.java:57)
at org.eclipse.jdt.launching.JavaRuntime.computeUnresolvedRuntimeClasspath(JavaRuntime.java:1509)
at org.eclipse.jdt.launching.AbstractJavaLaunchConfigurationDelegate.getBootpathExt(AbstractJavaLaunchConfigurationDelegate.java:299)
at org.eclipse.jdt.launching.AbstractJavaLaunchConfigurationDelegate.getVMSpecificAttributesMap(AbstractJavaLaunchConfigurationDelegate.java:615)
at org.eclipse.jdt.launching.JavaLaunchDelegate._OT$callOrig(JavaLaunchDelegate.java:71)
at org.objectteams.Team._OT$terminalCallNext(Team.java:598)
at org.objectteams.Team._OT$callNext(Team.java:582)
at org.eclipse.objectteams.otdt.internal.debug.adaptor.launching.JDTLaunchingAdaptor._OT$callNext(JDTLaunchingAdaptor.java:56)
at org.eclipse.objectteams.otdt.internal.debug.adaptor.launching.JDTLaunchingAdaptor._OT$callReplace(JDTLaunchingAdaptor.java:56)
at org.objectteams.Team._OT$callAllBindings(Team.java:557)
at org.eclipse.jdt.launching.JavaLaunchDelegate.callAllBindings(JavaLaunchDelegate.java)
at org.eclipse.jdt.launching.JavaLaunchDelegate.launch(JavaLaunchDelegate.java)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:885)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:739)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1039)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1256)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)
I faced a similar issue in the past, you can try the following:
Exit Eclipse
Go to your workspace folder in the file explorer
Look for the .metadata folder and delete it
Re-open Eclipse
Hope it works.
for me it happens when in run configuration I click on configure next to PHP server
Solve it by clicking new instead
I had Similar issue, Just restarted eclipse it works automatically
Finally got solution don't need to delete .metadata or .settings just need to add this in environmental variables In System variables _JAVA_OPTIONS -Xmx1024M
After starting Eclipe I see the following error message in the workspace/.metadata/.log
!ENTRY org.eclipse.core.runtime 4 0 2017-09-18 09:38:48.275
!MESSAGE Invalid input url:platform:/plugin/com.mountainminds.eclemma.ui/icons/full/eview16/coverage.gif
!STACK 0
java.io.IOException: Unable to resolve plug-in "platform:/plugin/com.mountainminds.eclemma.ui/icons/full/eview16/coverage.gif".
The message does not go away even after uninstalling or reinstalling the plugin.
Any ideas on how to resolve this?
Eclipse: Oxygen 4.7.0
EclEmma: 3.0.0
EclEmma became an Eclipse project and is now part of the Eclipse Java download packages. Due to the move, the plug-ins have been rename: com.mountainminds.eclemma.ui become org.eclipse.eclemma.ui.
If you use a workspace that have been used with EclEmma < 3.0.0 before,
start Eclipse with the option -clean and
reset all Java perspectives (coverage.gif is the icon of the Coverage view and could be referenced in the stored window/perspective layout).
This is the image the error is referring to.
Put it in the proper installation path on your machine and you'd be fine.
I am using Eclipse Oxygen, and I have installed Nexus OSS Repository Manager. At Window->Preferences->Maven I have checked Download repository index updates on startup.
On startup Eclipse is trying to updated index for Nexus and it takes a while. But after that I am getting an error saying that it is unable to update index for nexus.
From the log I am extracting relevant lines:
!ENTRY org.eclipse.m2e.logback.appender 4 0 2017-07-04 10:55:22.312
!MESSAGE Unable to update index for nexus|http://localhost:8081/nexus/content/groups/public/: .m2\repository\.cache\m2e\1.8.0\33b5073b9c3fc53d62eb8dc83e442c3d\nexus-maven-repository-index.zip (The system cannot find the file specified)
!STACK 0
java.io.FileNotFoundException: .m2\repository\.cache\m2e\1.8.0\33b5073b9c3fc53d62eb8dc83e442c3d\nexus-maven-repository-index.zip (The system cannot find the file specified)...
When I try to start new Maven project and choose Nexus Indexer as the Catalog I am getting the error message: No archetypes currently available. The archetype list will refresh when the indexes finish updating.
I am interested in why is Eclipse looking for nexus-maven-repository-index.zip instead of nexus-maven-repository-index.gz?
In the folder .m2\repository.cache\m2e\1.8.0\33b5073b9c3fc53d62eb8dc83e442c3d\ I have three files: nexus-maven-repository-index.gz (360 MB), nexus-maven-repository-index.properties (180 B) and chunks.lst (0B). No nexus-maven-repository-index.zip.
I have searched for solution on the Stackoverlow, tried lots of things, made some improvements on this issue (which was even worse than now), but did not solve it.
The log message is misleading. Nexus will try to download that file if the other index files fail to download. So you'll see that line if it can't download the .gz files.
Problems occurred while performing provisioning operation: Profile id SELF is not registered.
Profile id SELF is not registered.
Please share your thought on this Thanks
Part of Error Log:
!ENTRY org.eclipse.epp.logging.aeri.core 2 1 2017-01-07 20:55:23.822
!MESSAGE AERI failed with an error. Please report this error: null ; version: 1.100.0.v20160211-1103
!STACK 0
java.lang.NullPointerException
from run go to the %userprofile% --> C:\users\
go to .p2 folder --- delete all folders/files
run the eclipse ..... close the eclipse ... and start again...
In my case, it was sufficient to delete the *.profile.gz files in
C:\Users\%username%\.p2\org.eclipse.equinox.p2.engine\profileRegistry\<your profile folder>\
(or at least move the files to somewhere else) and restart Eclipse.
I didn't figure out why there seems to be different profile IDs. Maybe because I installed my Eclipse with Oomph, and that was generating some other profile which caused the problem. Just a guess.
Plugin A uses a class,ClassB, which is from Plugin B.When "run as eclipse application", everything goes well; however, when PluginA adn Plugin B are exported as Jar, and install into a new eclipse platform, they run well independently, but crash when the codes reach the line where Plugin A uses the ClassB.
error log: ava.lang.NoClassDefFoundError Caused by: java.lang.ClassNotFoundException
In plugin org.jboss.vpe.browsersim.eclipse, there is BrowserSimLauncher.java in the package org.jboss.vep.browsersim.eclipse.launcher;
In plugin org.ayound.js.debug.core, there exits a java file "JsLaunchConfigurationDelegate.java", and I put BrowserSimLauncher.launchBrowserSim(startUrl);
into it, this means I've used previous plugin's class 'BrowserSimLauncher' in the latter plugin.
I also do all the"dependencies things", including adding lines to latter plugin's manifest.mf:
Import-Package: org.jboss.tools.vpe.browsersim.eclipse.launcher
and to previous plugin's manifest.mf:
Export-Package: org.jboss.tools.vpe.browsersim.eclipse.launcher
In the development environment, both plugins compiles successfully, when "run as eclipse application", things goes well, and the latter plugin can sucessfully call BrowserSimLauncher.launchBrowserSim(startUrl); ;
however, when I exported both plugins as several .jar files, and copy them into the /plugin folder of another eclipse directory, start the eclipse, both plugins can run well independently, but the plugin fails to call BrowserSimLauncher.launchBrowserSim(startUrl);. and the error log show as follow:
!ENTRY org.eclipse.core.jobs 4 2 2015-01-06 16:29:03.817
!MESSAGE An internal error occurred during: "Launching index.html".
!STACK 0
java.lang.NoClassDefFoundError: org/jboss/tools/vpe/browsersim/eclipse/launcher/BrowserSimLauncher
at org.ayound.js.debug.launch.JsLaunchConfigurationDelegate.launch(JsLaunchConfigurationDelegate.java:101)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1222)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Caused by: java.lang.ClassNotFoundException: org.jboss.tools.vpe.browsersim.eclipse.launcher.BrowserSimLauncher cannot be found by org.ayound.js.debug.core_2.2.0
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 6 more
the latter plugin(js.debug.core) can't find the previous plugin(browsersim.eclipse)!
If you just copy plugins in to the Eclipse 'plugins' directory then you need to specify the '-clean' option when you start Eclipse to get it to rebuild the plugin dependencies cache.
You can specify '-clean' on the Eclipse command line or in the eclipse.ini file (here it must be before any -vmargs line).
It is safe to always specify -clean but it will slow down the Eclipse start a bit.
supplements:
Just startup eclipse with option "-clean", problem solved. Details are from reference article:
What it does:
if set to "true", any cached data used
by the OSGi framework and eclipse
runtime will be wiped clean. This will
clean the caches used to store bundle
dependency resolution and eclipse
extension registry data. Using this
option will force eclipse to
reinitialize these caches.
How to use it:
Edit the eclipse.ini file located in your Eclipse install directory and insert -clean as the first line.
Or edit the shortcut you use to start Eclipse and add -clean as the first argument.
Or create a batch or shell script that calls the Eclipse executable with the -clean argument. The advantage to this step is you can keep the script around and use it each time you want to clean out the workspace. You can name it something like eclipse-clean.bat (or eclipse-clean.sh).
(From: http://www.eclipsezone.com/eclipse/forums/t61566.html)
Other eclipse command line options: http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fruntime-options.html