为 Eclipse RCP 项目生成默认的 config.ini
Posted
技术标签:
【中文标题】为 Eclipse RCP 项目生成默认的 config.ini【英文标题】:Generating default config.ini for an Eclipse RCP projekt 【发布时间】:2015-10-23 09:47:00 【问题描述】:我有一个 Eclipse RCP 项目,我必须将其导出为“可部署的插件和片段”,然后创建一个安装程序,它工作正常。安装后,程序无法启动。我在自动生成的 config.ini 文件中添加了一些条目,并且至少显示了登录屏幕。
我希望 Eclipse 根据我在输入掩码中输入的配置自动生成 config.ini 文件。因此,我在我的项目中添加了一个 config.ini.product 文件。但是,如果我导出项目,创建一个安装程序并安装它,config.ini 文件和以前一样,缺少条目。
如果我查看 Eclipse 文档,在我看来,config.ini.product 文件(然后用于生成 config.ini 文件)仅在我将应用程序导出为“Eclipse 产品”时使用。我这是真的还是我混淆了什么?如何让 eclipse 生成带有适当条目的 config.ini 文件?
这些是我后来添加的条目,它们至少显示了应用程序的登录屏幕:
osgi.bundles=org.eclipse.equinox.common@2:start,\
org.eclipse.update.configurator@3:start,\
org.eclipse.core.runtime@start org.eclipse.equinox.ds@4:start,\
org.eclipse.equinox.event@5:start,\
这是从 Eclispe 3.0 到 4.4 的迁移。所以现在我正在使用 Luna。
编辑 1 我现在正在尝试将插件导出为“Eclipse 产品”。在 config.ini.product 文件的 Overview 选项卡中,我可以在“Product”->“Product”和“Application”下添加相应的类。我还在依赖项选项卡中添加了构成应用程序的插件。但是现在如果我想将它导出为“Eclipse 产品”,它会说“找不到该产品的定义插件”。我不是很明白这个错误信息,因为我在依赖选项卡中添加了插件。
【问题讨论】:
使用“可部署的插件和片段”生成一些打算安装在现有 Eclipse 中的东西,config.ini 对此毫无意义,因此无法生成它。跨度> 所以我的假设是正确的。以前的构建过程是将插件导出为“可部署的插件和片段”,然后使用 inno setup 5 构建安装程序。现在,如果我将插件导出为“Eclipse 产品”,我会得到一个独立的像我们之前使用的带有安装向导的应用程序,它安装产品并创建一个 .exe? 产品导出为您提供了一个目录或 zip 文件,其中包含运行 RCP 所需的所有内容(JRE 除外)。最新的 Eclipse Mars 构建可以附带安装程序,但我不知道它是如何构建的(可能使用 Maven + Tycho)。 Edit 1 似乎在问一个全新的问题,如果在@greg-449 的帮助下我还不够,也许你需要创建一个 MCVE @987654321 @ 并且肯定有人会提供帮助。但目前这个问题太像在没有足够信息的情况下寻求调试帮助。 【参考方案1】:有一组优秀的tutorials 介绍了如何使用 Eclipse、Maven 和 Tycho 创建和构建项目。您还没有谈到如何将构建作为构建系统的一部分进行构建,但是如果您从 Eclipse 3.0 迁移到(非常!)更现代的 Eclipse,则有很多新选项可供您使用。
本教程非常好,因为所有内容都是分阶段构建的,因此您不需要任何东西。
当您到达stage 6 of the tutorial 时,它将向您展示如何制作 Eclipse 产品,而该阶段的关键是 yourname.product
文件中包含有关如何生成和配置正确的 @987654332 的信息@。
简要说明您需要做的事情是:
-
创建一个新的产品文件。
File
-> New
-> Other
-> Product Configuration
并按 Next
-
填写向导。
-
输入位置(现有项目根文件夹正常)
输入名称
初始化文件内容。这是创建 config.ini 的第一遍。你大概可以选择
Create a configuration file with basic settings
。 Use an existing product
的第二个选择可能对您有用,因为您的产品可能与您已经拥有的现有产品非常相似(例如 org.eclipse.platform.ide
)。最后,第三个选项Use a launch configuration
允许您从已创建的启动配置中创建产品文件。因此,如果您已经在调整某些启动配置,那么您应该很幸运能够使用该选项。
-
配置您的 config.ini
-
打开产品文件
选择
Configuration
标签
按Add Recommended...
按确定
根据需要编辑配置
“找不到产品的定义插件。”
此错误消息表示在 yourname.product
文件的概览选项卡中找不到列出的产品。产品是 Eclipse 的定义有两个方面。首先是在一个插件项目的plugin.xml
,具体是扩展org.eclipse.core.runtime.products
扩展点。
例如,在Overview
选项卡中,您可能将myproductplugin.product
作为Product
(参见下面的屏幕截图),您将在myproductplugin
项目的plugin.xml
中具有以下内容:
<extension
id="product"
point="org.eclipse.core.runtime.products">
<product
application="org.eclipse.ui.ide.workbench"
name="My Product Name Here">
<property
name="appName"
value="My Product Name Here">
</property>
</product>
</extension>
您可以通过点击Synchronize
链接获取为您编写的plugin.xml
内容(见截图)。
【讨论】:
感谢您的回答。我按照描述的步骤操作,但它不起作用。我什至根据我现有的运行配置添加了一个新的配置文件。产品定义输入字段中的值是正确的,但是当我单击“将此配置与产品的定义插件同步”时,我收到无法找到插件的错误消息。当我尝试使用此配置文件将其导出为“Eclipse 产品”时,我收到相同的错误消息。这很奇怪。 那么需要更多详细信息,Product
字段中会显示什么?您是否尝试按 Product 旁边的 New...
以查看是否创建了一个新的 Product
是否有效?
我发现了错误。扩展的 ID 中有一个点“org.eclipse.core.runtime.applications”。因此,我无法在产品配置中使用该 ID。当我单击“新建”时,而不是使用由于点 Eclipse 而无法使用的 ID,只需将“产品”作为 ID。现在我必须调整包装,但它会正常工作。谢谢。以上是关于为 Eclipse RCP 项目生成默认的 config.ini的主要内容,如果未能解决你的问题,请参考以下文章
去掉Eclipse RCP中的多余默认按钮(Next AnnotationPrevious AnnotationLast Edit Location)
项目资源管理器未在 Eclipse rcp 应用程序中显示项目