How to fully delete Subclipse plugin?

2019-03-10 16:59发布

问题:

I am having trouble getting rid of Subclipse from my Eclipse configuration.

I made the decision to switch to Subversive due to the m2eclipse project dropping support for Subclipse.

So I uninstalled Subclipse and then installed Subversive using the About Eclipse -> Installation Details -> Uninstall method. Now, when I go to any Team related options/tasks/preferences there are two SVN options available (one for Subversive and one for Subclipse) making life confusing.

Having grepped the workspace .metadata folder for the string subclipse I can see that the configuration is still littered with references to Subclipse:

$ grep -lir "subclipse" .metadata/
.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload17.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload23.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload21.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload19.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/usagedata.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload22.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload14.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload13.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload20.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload18.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload16.csv
.metadata/.plugins/org.eclipse.epp.usagedata.recording/upload15.csv
.metadata/.plugins/org.eclipse.team.ui/dialog_settings.xml
.metadata/.plugins/org.eclipse.team.ui/syncParticipants.xml
.metadata/.plugins/org.eclipse.pde.core/-213569165961.target/.lazy
.metadata/.plugins/org.eclipse.pde.core/-213569165961.target/.state
.metadata/.plugins/org.eclipse.pde.core/-213569165961.target/.pluginInfo
.metadata/.plugins/org.eclipse.core.resources/.projects/jxse-tutorials/.syncinfo.snap
.metadata/.plugins/org.eclipse.core.resources/.projects/jxse-tutorials/.indexes/properties.index
.metadata/.plugins/org.eclipse.core.resources/.projects/BA_NAT_Traversal/.syncinfo
.metadata/.plugins/org.eclipse.core.resources/.projects/barchart-udt/.syncinfo
.metadata/.plugins/org.eclipse.core.resources/.projects/barchart-udt/.indexes/properties.index
.metadata/.plugins/org.eclipse.core.resources/.projects/netty-benchmark/.syncinfo
.metadata/.plugins/org.eclipse.core.resources/.projects/netty-benchmark/.indexes/properties.index
.metadata/.plugins/org.eclipse.core.resources/.projects/jxta/.syncinfo.snap
.metadata/.plugins/org.eclipse.core.resources/.root/73.tree
.metadata/.plugins/org.eclipse.core.resources/.snap
.metadata/.bak_0.log

All of the projects above are now disconnected from SVN. Obviously some of the references such as usagedata are not important, I am more worried about the XML files though. Is it safe to manually go through and delete all tags/properties related to Subclipse? I feel that approach may be unwise though.

Does anyone know of a way to eliminate all traces of Subclipse without losing my workspace? Also any tips on what I might have done wrong? Should I have manually disconnected all of my SVN projects before making the switch to Subversive?

回答1:

I had exactly the same problem. The reason is when you uninstall via eclipse, it doesn't delete the jar files from the plugin folder, the steps I did.

Go to folder eclipse/plugins for avoiding any potential damage (just deleting wrong jars and get errors in other apps) list the jars from subclipse.

$ cd eclipse/plugins
$ ls |grep org.tigris.subversion

and then if it lists the following

$ ls |grep org.tigris.subversion
org.tigris.subversion.clientadapter_1.6.12.jar         org.tigris.subversion.subclipse.doc_1.3.0.jar    org.tigris.subversion.subclipse.tools.usage_1.0.1.jar
org.tigris.subversion.clientadapter.javahl_1.6.15.jar  org.tigris.subversion.subclipse.graph_1.0.9.jar  org.tigris.subversion.subclipse.ui_1.6.17.jar
org.tigris.subversion.subclipse.core_1.6.17.jar        org.tigris.subversion.subclipse.mylyn_3.0.0.jar

Remove them by piping xargs rm to the command

$ ls |grep org.tigris.subversion|xargs rm

Restart your eclipse and you'll only see the correct svn version.

PS: the .metadata you display comes from the workspace, it only affects to the projects you got from svn, it won't do any change in eclipse.