Java 在EclipseSWT中保存插件数据

Java 在EclipseSWT中保存插件数据,java,eclipse-plugin,jaxb,swt,Java,Eclipse Plugin,Jaxb,Swt,我正在SWT中开发一个eclipse插件,它有大约5个向导页面,用户需要在每个页面中输入一些数据。我的痛点是,每当用户单击“下一步”按钮时,都必须生成一个XML,它将在每次按下按钮时不断更新 i、 e.一旦用户在第一个页面中单击NEXT,就会创建一个新的XML,并且在连续的页面上,必须将用户数据附加到它。我将使用JAXB来实现这一点,但我不确定如何继续 所以,如果有人能提供一些建议和参考。谢谢。您可以利用插件自己的绑定上下文将数据文件持久保存在框架提供的存储区域中 要在bundle上下文中初始化

我正在SWT中开发一个eclipse插件,它有大约5个向导页面,用户需要在每个页面中输入一些数据。我的痛点是,每当用户单击“下一步”按钮时,都必须生成一个XML,它将在每次按下按钮时不断更新

i、 e.一旦用户在第一个页面中单击NEXT,就会创建一个新的XML,并且在连续的页面上,必须将用户数据附加到它。我将使用JAXB来实现这一点,但我不确定如何继续


所以,如果有人能提供一些建议和参考。谢谢。

您可以利用插件自己的绑定上下文将数据文件持久保存在框架提供的存储区域中

要在bundle上下文中初始化数据文件,需要重写插件的Activator类的start方法

        public void start(BundleContext context) throws Exception {
           super.start(context);
           setXMLDataFile(context.getDataFile("XMLDataFile.xml"));
           setWizardPage(context.getDataFile("WizardPageIndicator.txt"));
        }

然后在同一个Activator中创建一个静态getter方法,以便能够检索/修改数据文件供您在向导中使用。

不确定您要问什么,但在向导中通常要做的事情是在向导类中调用performFinish之前不创建任何输出。确定,想象一下,在每个向导页面中都有一个额外的保存按钮,如果单击该按钮,则必须创建一个输出XML来保存向导页面数据。现在,所有页面中都必须能够实现这一点,假设用户只想在10个向导页面中的第5个页面中突然结束会话,他将单击SAVE按钮,这实际上必须创建一个XML,它将存储他在这5个页面中输入的所有数据。稍后,他必须恢复它们并从第6页继续,这就是我正在寻找的。我希望我必须使用DialogSettings,不确定。谢谢Harold。但无法理解setXMLDataFile和setWizardPage方法是什么。还有,WizardPageIndicator.txt?您能告诉我这个XMLDataFile.xml中将存储哪些数据吗?