将GEF-Editor导出为可运行的JAR

时间:2014-07-04 19:10:58

标签: eclipse eclipse-plugin eclipse-gef

正如标题中所述:我想运行Eclipse-Plugin,更具体地说是一个GEF-Editor,而不是之前启动Eclipse实例。

我尝试使用MANIFEST.MF文件中提供的导出功能: enter image description here

但是,通过在命令行上执行editor.jar来运行生成的JAR(称为java -jar editor.jar)失败,并在插件editor.jar中显示消息 no main manifest属性

我意识到这是因为我的MANIFEST.MF文件缺少以下行

Main-Class: <packagename>.<classname>

定义了我的应用程序的入口点。但是,我不知道我到底需要做什么(在Eclipse-Plugin的情况下),因为我没有像main方法那样的东西。我假设Eclipse正在运行一些魔术代码,当我以 Eclipse Application 开始我的项目时,它并没有显示给我。

那么,我需要做什么?

2 个答案:

答案 0 :(得分:1)

您可以尝试将GEF编辑器作为Java应用程序运行。请参阅Draw2D示例以了解如何完成它。您可以重新使用GraphicalViewer和PaletteViewer,这意味着将保留基于鼠标的图表和调色板交互。 但是,您的编辑器类可能必须合并到SWT shell中。此外,您的编辑器为Eclipse工具栏,弹出菜单等所做的所有操作都将消失。如果需要,必须以某种方式将大纲和树视图合并到您的Java应用程序中。 认为你最好使用RCP应用程序。

答案 1 :(得分:0)

将您的GEF编辑器包装在一个简单的RCP中。您可以通过插件向导创建一个,设置“您是否会创建一个富客户端应用程序?”在这个过程中“是”。这使您可以选择在下一步中通过 Hello World 模板创建最小应用程序。完成后,您可以在此插件中嵌入GEF编辑器,或者从新的RCP应用程序声明依赖关系到GEF编辑器插件,并从Application类'start方法启动编辑器

有关RCP开发的资源概述,请参阅Getting started with the Eclipse RCP

它确实不会给编辑器增加太多开销,但是让您有机会使用平台的工作台和工作区隐喻,并创建易于部署和使用的应用程序包。

完成后,您可以从plugin.xml&gt;测试您的RCP 概述&gt; 测试&gt; 启动Eclipse应用程序。这将运行IDE的全新实例,而只是RCP应用程序本身。

不是从MANIFEST.MF导出,而是考虑创建产品(您可以通过向导执行此操作:&gt; 产品配置),并通过Maven Tycho插件构建它(看看相应的 - 非常值得 - 来自EclipseCon Europe 2012的教程:http://eclipsecon.org/europe2012/sessions/building-eclipse-plugins-and-rcp-applications-tycho.html,这包括一个关于创建产品的部分)。 Tycho提供了真正的跨平台构建,as long as you're not on Windows

那里没有魔法代码:)。