Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 编辑器初始化失败rcp eclipse中的站点不正确_Java_Eclipse Plugin_Eclipse Rcp - Fatal编程技术网

Java 编辑器初始化失败rcp eclipse中的站点不正确

Java 编辑器初始化失败rcp eclipse中的站点不正确,java,eclipse-plugin,eclipse-rcp,Java,Eclipse Plugin,Eclipse Rcp,你找到解决办法了吗 无法创建零件 编辑器id:rcp_demo.Editor.emp 编辑器初始化失败:rcp_demo.Editor.emp。网站不正确 软件包名称:RCP\u Demo.Editor 类名:Emp_command.java、Emp_Editor.java、Emp_Editor_input.java public class EmpCommand extends AbstractHandler{ public static final String Id = "rcp_

你找到解决办法了吗

无法创建零件

编辑器id:rcp_demo.Editor.emp

编辑器初始化失败:rcp_demo.Editor.emp。网站不正确

软件包名称:RCP\u Demo.Editor

类名:Emp_command.java、Emp_Editor.java、Emp_Editor_input.java

public class EmpCommand extends AbstractHandler{
    public static final String Id = "rcp_demo.Editor.EmpCommand";

    @Override
    public Object execute(ExecutionEvent event) throws ExecutionException {

         IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindow(event);
            IWorkbenchPage page = window.getActivePage();
            EmployeeEditorInput input=new EmployeeEditorInput();
            try {
                page.openEditor(input,EmployeeEditor.Id);
            } catch (PartInitException e) {
                System.out.println("Error:" + this.getClass().getName() + ":" + e);
                e.printStackTrace();
                throw new ExecutionException("Error open EmployeeEditor");
            }
        return null;
    }
}
public class EmployeeEditorInput implements IEditorInput{
//IEditorInput implements all methods 

}
public class EmployeeEditor extends EditorPart{
    public static final String Id="rcp_demo.Editor.emp";

    @Override
    public void init(IEditorSite site, IEditorInput input)
            throws PartInitException {
            }
    @Override
    public void createPartControl(Composite parent) {
        parent.setLayout(new RowLayout(SWT.HORIZONTAL));
        }
}

EditorPart
不接受空的
init
方法。
init
的绝对最小值为:

@Override
public void init(IEditorSite site, IEditorInput input)
        throws PartInitException {
    setSite(site);
    setInput(input);
}
您可以在
init
方法中执行其他操作,但必须调用
setSite
setInput
。您的错误是因为您没有调用
setSite

简介:编辑器初始化失败站点不正确


这里的信息远远不够。更详细地解释你在做什么。谢谢兄弟,请完整地描述一下这项任务
public class ProductEditor extends EditorPart {

    //initialize editor when assigned its site
    public void init(IEditorSite site, IEditorInput input)
            throws PartInitException {

        //instanceof in java is also known as type comparison operator
        if (!(input instanceof ProductEditorInput)) {
              throw new PartInitException("Invalid Input: Must be "
                      + ProductEditorInput.class.getName());
          }
          setSite(site);
          setInput(input);
    }

    public void createPartControl(Composite parent) {

    parent.setLayout(null);
    Label lblProductEditor = new Label(parent, SWT.NONE);
    lblProductEditor.setFont(SWTResourceManager.getFont("Tahoma", 16, SWT.BOLD));
    lblProductEditor.setBounds(36, 45, 285, 48);
    lblProductEditor.setText("Product Editor");
    }
}