简体   繁体   English

Eclipse插件开发:插件更新或卸载/安装真的很干净吗?

[英]Eclipse plugin development: Is plugin update or uninstall/install really clean?

While developing Nodeclipse , I found that some bugs don't arise immediately but after some time , when combination of updates, restarts happens. 在开发Nodeclipse的过程中 ,我发现一些错误不会立即出现,而是会在一段时间后结合更新而重新启动。

Is plugin update or uninstall/install really clean? 插件更新或卸载/安装真的很干净吗?

I develop and use installing for update, then use newer version until I got time/idea to improve. 我开发并使用安装进行更新,然后使用较新的版本,直到我有时间/想法来改进。 However as said above I ran into situation when Eclipse behaves differently after the new feature have been used for several days. 但是,如上所述,在使用新功能几天后,我遇到了Eclipse行为不同的情况。

Is there some information that must be read about plugin install life-cycle, that mentions some not so evident behavior. 关于插件安装生命周期,是否有一些必须阅读的信息,其中提到了一些不太明显的行为。

UPDATE: Some problem were in Autumn 2013 when we were switching to tycho build. 更新:某些问题是在2013年秋季,当我们转向tycho build时。 Also around that time Eclipse Kepler 4.3.1 was released. 同样在那个时候,Eclipse Kepler 4.3.1发布了。

No, they are not "clean". 不,它们不是“干净的”。 Moreover when you do uninstall, no files are deleted, Eclipse would just prevent plugin from loading on the startup. 而且,当您卸载时,不会删除任何文件,Eclipse只会阻止插件在启动时加载。 If you really want to remove the plugin you need to 如果您确实要删除插件,则需要

  • Uninstall it via UI 通过UI卸载
  • Delete the plugin files in the file system 删除文件系统中的插件文件
  • Remove plugin settings from workspace or create a new one. 从工作区中删除插件设置或创建一个新的插件设置。

Here is some interesting info for you: 这是一些有趣的信息给您:

There is no mechanism within Eclipse to permanently and physically uninstall a feature and its plug-ins. Eclipse中没有机制可以永久地和物理上卸载功能部件及其插件。 The process to physically and permanently remove an undesirable feature and its plug-ins is a manual process that should be done when Eclipse is not running. 从物理上永久删除不需要的功能及其插件的过程是手动过程,应该在不运行Eclipse时完成。 In order to do, you will have to manually remove the files there associated with the feature from the eclipse/features directory and its plug-ins from the eclipse/plugins directory. 为此,您必须从eclipse / features目录中手动删除与该功能相关的文件,并从eclipse / plugins目录中删除其插件。 Be very cautious as to which files you delete, and always have a backup of your Eclipse directory. 在删除哪些文件时要非常谨慎,并始终备份Eclipse目录。 If you remove the wrong files from these directories, you may have quite some trouble restoring your Eclipse to a stable state. 如果从这些目录中删除错误的文件,那么将Eclipse恢复到稳定状态可能会遇到很多麻烦。 Therefore, unless your hard disk storage capacity is extraordinarily limited, it is recommended that you simply leave the physical files in place. 因此,除非您的硬盘存储容量受到极大限制,否则建议您仅保留物理文件就位。

Note that when manually removing plugins as described above, it is likely that some metadata will still cached by Eclipse. 请注意,当如上所述手动删除插件时,Eclipse可能仍会缓存某些元数据。 This can lead to problems later on. 稍后可能会导致问题。 Running Eclipse with the -clean option may help with that, as it causes Eclipse to clean the cached metadata. 使用-clean选项运行Eclipse可能会有所帮助,因为它会导致Eclipse清除缓存的元数据。 See the Running Eclipse help page for details about this option. 有关此选项的详细信息,请参见“正在运行的Eclipse”帮助页面。

Source: http://wiki.eclipse.org/FAQ_How_do_I_remove_a_plug-in%3F 来源: http//wiki.eclipse.org/FAQ_How_do_I_remove_a_plug-in%3F

You cannot do this ideally, because the plugins designed for eclipse leave their temp access files even if they are uninstalled, to do so, you will have to follow the steps: 您不能理想地执行此操作,因为为eclipse设计的插件即使卸载了也会保留其临时访问文件,为此,您必须遵循以下步骤:

  • Uninstall the Plugin: You can use the Eclipse UI directly. 卸载插件:您可以直接使用Eclipse UI。 Go to Help > About Eclipse > Installation Details, select the software you no longer want and click Uninstall. 转到“帮助”>“关于Eclipse”>“安装详细信息”,选择不再需要的软件,然后单击“卸载”。
  • Delete the Present temp Files in the System, make sure to re-check the dependencies(Note: Removing Dependent Plugins might cause Eclipse to stop Working). 删除系统中的当前临时文件,确保重新检查依赖关系(注意:删除依赖插件可能会导致Eclipse停止工作)。
  • Remove the plugins from the workspace, or in short you can re-configure a new workspace. 从工作空间中删除插件,或者简而言之,您可以重新配置新的工作空间。

This would be removing the plugins, but removing its traces manually. 这将删除插件,但手动删除其痕迹。

ref# Link ref# 链接

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM