息自动写到 Host 起来的那个 Eclipse 的 Workspace 中,被调试模式启动的 Eclipse 所 做的一些修改不会影响主 Eclipse,而在 Visual Studio 中虽然可以使用 Experimental Hive 方式进行插 件开发,但是由于这些配置是保存在注册表中的,所以被 Host 启动的 Visual Studio 实例会污染到主 Visual Studio,每次重启 IDE 都需要运行“Reset the Microsoft Visual Studio 2008 Experimental hive”来 进行环境的重置,且重置耗时非常长,浪费了大量时间; (5)VS2008中,如果插件中抛出异常,而又没有捕获的话,轻则 VS2008会显示一个错误消息框, 重则 VS2008会宕掉;而在 Eclipse 中会将插件中未捕获异常显示出来并且输出到日志文件中,方便 插件开发者排查插件的 Bug。 (6)Eclipse 中工程相关的特性是以 Nature 的方式提供的,一个 Nature 通常可以挂接到几乎所有的 工程类型中去,包括用户自定义类型;而在 Visual Studio 中工程相关的特性则是以 SubProject 的形 式提供的,往往只能挂到 Visual Studio 内置的少数几个工程类型中去(比如 CSharpProject、
VBProject) ,这样可扩展性大大降低了。
(7)Eclipse 中可以使用 JET 来开发非常复杂的代码生成器,而 Visual Studio 中的代码生成则只能 用非常简单的代码模板机制,复杂的逻辑就必须通过字符串拼接来完成。