Eclipse webtools项目(WTP)及其性能/质量

MRa*_*ser 54 java eclipse ide jsp eclipse-wtp

我们公司几年来一直在使用eclipse(我们从0.7版开始使用WTP)

我目前正在使用WTP 3.2.3评估eclipse 3.6.2,它应该用WTP 3.0.4取代eclipse 3.4.2作为我们的主要IDE.

而且我不得不再次对性能问题感到非常失望:
WTP 3.2.3似乎比3.0.4慢得多.
事实上,我真的很想知道为什么每次发布时WTP会变慢.

我们的一个应用程序(动态Web项目)包含大约4000个java类和700个jsps/jsp片段.我们只需要基本的WTP功能来开发jsps,xmls和xsd.我们不需要像Dali那样的高级功能(JPA工具真的应该由webtools项目覆盖吗?),Libra或者首先是一个可视化的xml编辑器.

另一个有趣的观点是,WTP似乎会降低整个IDE的速度.SWT在几秒钟内是非反应性的,cpu使用率非常高(特别是在构建发生之后 - 如果你查看系统作业,几个jsp/javascript索引器正在工作几分钟,即使所有WTP构建验证器已被禁用),打开新文件较慢,浏览项目等.

这在包含仅一个核心cpu的旧机器上尤为明显.

最糟糕的是,我觉得WTP开发团队并不关心性能 (例如,查看http://wiki.eclipse.org/WTP_Performance_Tests页面 - 最后一次更新发生在2008年).

bug报告和关于向的基本特征表现新闻组帖子(如JSP编辑/确认)一段时间后,往往被忽视或关闭,一些例子:在这里,这里,这里.

Quo vadis,WTP?


请不要误会我的意思:

我不想责怪WTP.
事实上,我相信WTP是一个由才华横溢的团队开发的优秀开源项目.
但很明显,该项目的质量保证存在问题,特别是在影响可用性和用户接受度的性能方面.

我只是想指出,团队应该首先关注对大多数用户至关重要的事情,然后再努力实现超级功能.

我的问题

  • 您对WTP的体验是什么,尤其是最新版本?
  • 你能证实或反驳我的意见吗?
  • 还有更好的选择吗?
  • 你有没有切换到WTP,为什么?
  • 您是否有一些最佳实践来加快速度,特别是像我们这样的中高端?

UPDATE

我想对这个问题进行更新,以反映当前的答案并总结当前的结果:

  • 许多用户或多或少抱怨同样的问题,所以我认为这些问题已得到确认.
    顺便说一句,这个问题也在theserverside.com的新闻帖中提到,附加评论.

  • 负责任的WTP项目负责人nitind在WTP的现状上发表了一篇值得一提的文章,我想引用一句:
    "简单的事实是,我们不会花太多时间在性能测试上,因为我们缺乏这方面的资源."
    "当然,我们希望积极主动,而不是反应,但我们倾向于首先将时间分配给功能性问题."

所以这个问题变成了一些社区对WTP团队的公开信:

Dear WTP team,

it's obvious that WTP is suffering from major quality/performance issues 
which you try to play down or to ignore.
Please invest some time to improve the current situation 
at the cost of new features and do everything what's required 
to solve the current problems.
E.g. revive the performance team, do some regression tests between 
previous releases or ask the community for (precise defined) help.

I am sure that they are enough people willing and able to help here.

If you like, do some kind of poll to get a feeling what should be 
the most important scopes of future's WTP releases.

Please, please, listen to your community.
Run Code Online (Sandbox Code Playgroud)

nit*_*ind 32

为了回应,我是在WTP中提供JSP,XML和JavaScript源编辑功能的项目的负责人.一个简单的事实是,我们不会花太多时间在性能测试上,因为我们缺乏这样做的资源.当然,我们希望积极主动而不是反应,但我们倾向于首先将时间分配给功能性问题.我们确实有一个定期运行性能回归测试的采用者产品,但我希望现在测试是在多核机器上运行的 - 我们还没有在一段时间内向我们报告任何新的危险信号.

在您链接的3个错误中,2个早于您赞美的3.0.4版本,第三个是格式化性能问题(因为已解决)或者是一个特定于XML文件的类型验证(修复它将具有在Xerces,iirc引发了内存泄漏,因此我们当时没有把它放进去).如果你有一些具体的项目,你可以附加到一个错误并说"做X在3.2的Y量较慢",我们将尽我们所能来找出回归的位置.

至于索引者,他们至少应该最终完成.存储的磁盘信息在WTP版本之间发生了变化,这些文件需要重新处理,因此它们会再次包含在搜索和(实施时)重构操作中.一旦初始索引完成,它应该逐步行动并且几乎不明显.您可能遇到的一个体系结构更改是,对于JSP,整个工作空间需要在单个工作台会话中编制索引,以使该索引被视为"最新".将Eclipse从失败状态中关闭只会延长再处理的影响.

听起来贵公司的标准安装包括整个WTP而不是滚动您自己的自定义分发.我建议您检查" 启动和关闭"首选项页面,并关闭您不想使用的任何功能的早期启动.你提到的任何事情都没有利用这个设施,但是WTP和平台还有其他领域.您对验证不感兴趣的任何内容都是验证首选项页面上的公平游戏,以及默认情况下在Web/JSP文件/验证首选项页面上验证JSP片段的设置.


Udo*_*Udo 5

我们在这里也遇到了与WTP 3.2.3相同的问题.我们在我们的产品中使用它已经有好几年了,但是我们的开发人员和客户对此工具的接受程度每年都在下降,因为在每个新版本中它都会越来越慢.

如果我可以禁用所有"高级"功能,我想使用它,但正如您所提到的,您根本无法禁用索引器.如果JSP文件已经运行,你也无法停止它的验证器(你可以测试这个,如果你拥有那么多的文件,我们的项目中也有大约1000个JSP文件和许多标记文件).

我也可以证明增加内存并没有帮助.它只能防止整个日食的崩溃,但它不会减少阻止WTP内部操作的UI.

在最新版本3.2.3中,当我从服务器视图中启动Tomcat时,我遇到了很多问题.该UI只是1分钟.不仅是我有谁,我在Windows上工作的所有同事都有同样的问题.在Linux上我不知道这个问题.

当您无法访问互联网时,WTP也存在问题.似乎有一些注册管理机构要求下载模式或类似的东西,如果你没有连接,那么它只是挂起并等待超时.