首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【插件开发】—— 14 Site is incorrect!编辑器启动报错!

【插件开发】—— 14 Site is incorrect!编辑器启动报错!

作者头像
用户1154259
发布2018-01-18 14:44:38
6300
发布2018-01-18 14:44:38
举报

最近在弄编辑器的时候出现了一个十分尴尬的错误!这里收录一下:

  BUG如下图所示:

  目测堆栈,与自己开发的代码无关。完全是Eclipse自己初始化的时候遇到了问题,最头疼的就是这种问题。因为Eclipse自己的源码十分庞大,调试起来太困难了。但是也显而易见的是,既然堆栈都是Eclipse的源码,那肯定是我的使用问题了!这点毋庸置疑:

  因此主要焦点还是放在Editor的类声明上面。

  这个原因报错:Site is incorreoct

在编辑器模型构造函数中插入断电,可以正常执行,证明其他的文件没有问题。还是编辑器本身的配置问题。

  查看报错源码,根据提示找到位置:

1    // Sanity-check the site
2    if (part.getSite() != site || part.getEditorSite() != site) {
3     throw new PartInitException(NLS.bind(
4       WorkbenchMessages.EditorManager_siteIncorrect, desc
5         .getId()));
6    }

  观察发现,应该是GetSite() 或者getEditorSite()的时候出错!

  于是自习观察Editor类,寻找哪个方法可能会出现错误!于是发现错误原因!

  当我们创建Editor的时候,Eclipse为我们自动生成一个Editor的类,但是这个类时继承editpart的,他需要实现一些抽象方法:

public class test extends EditorPart {

 public test() {
  // TODO Auto-generated constructor stub
 }

 @Override
 public void doSave(IProgressMonitor monitor) {
  // TODO Auto-generated method stub

 }

 @Override
 public void doSaveAs() {
  // TODO Auto-generated method stub

 }

 @Override
 public void init(IEditorSite site, IEditorInput input)
   throws PartInitException {
  // TODO Auto-generated method stub

 }

 @Override
 public boolean isDirty() {
  // TODO Auto-generated method stub
  return false;
 }

 @Override
 public boolean isSaveAsAllowed() {
  // TODO Auto-generated method stub
  return false;
 }

 @Override
 public void createPartControl(Composite parent) {
  // TODO Auto-generated method stub

 }

 @Override
 public void setFocus() {
  // TODO Auto-generated method stub

 }

}

  而当我们修改这个继承的类时,并没有删除这些方法。

  尤其是这个init类,它重写了父类的init方法,但是我们却忘记给出实现。于是初始化出错....

删除这个init(当修改继承的类时)或者调用父类的init方法(当父类是Editpart时)就可以了。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014-11-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档