我尝试使用 Buckminster 建立一个无头 RCP 构建。
我的项目存在大约 10 个子项目。产品定义基于功能并且位于插件中。我有两个特点。一个功能包含所有插件项目,另一个功能包含其他一些插件。
到目前为止,我没有自动化任何东西。我刚刚遵循 RalfEberts 教程并创建了一个功能,其中包括所有必需的插件,其中包括我的两个功能作为包含功能。我的目标定义是我的本地 eclipse 文件夹,其中包含所有可用的插件。
我使用 Buckminster-Eclipse 插件创建了 site.p2。之后,我尝试在提示符中使用 director 调用生成 exe 等。
问题是,生成的数据不等于 Eclipse 产品导出向导生成的数据。这就是为什么我的应用程序在几秒钟后启动并崩溃的原因。
例如,我有两个 exe 文件(我的应用程序 exe 和一个 eclipsec.exe)。也没有 features 文件夹,其中应该包括我的两个功能和 org.eclipse.rcp 功能。配置和 p2 文件夹内容也不同。
有人知道问题出在哪里吗?使用 Eclipse 中的产品向导导出非常完美。谢谢!
编辑
好的,现在我的应用程序不会崩溃,我尝试将 Buckminster 集成到 Jenkins 中。我创建了一个 product.ant、cspec、cquery 和 rmap 文件。我的目标定义 rcp.target 包含我的库的路径。实际上 Buckminster 会找到除 org.eclipse.rcp 之外的所有组件。Org.eclipse.rcp 是一个 jar 文件,位于我的 lib 中,但他没有找到。我尝试了一些严重的事情,比如将 org.eclipse.rcp 放到另一个地方并更改我的 rmap,但我总是得到相同的结果。
这是詹金斯的输出:
INFO: importtargetdefinition '-A' '/D:/Jenkins/workspace/Buckminster/de.tdb.build/rcp.target'
INFO: import '/D:/Jenkins/workspace/Buckminster/de.tdb.build/buckmister.cquery'
ERROR [0011] : No suitable provider for component org.eclipse.rcp:eclipse.feature was found in resourceMap file:/D:/Jenkins/workspace/Buckminster/de.tdb.build/site.rmap
ERROR [0011] : No suitable provider for component org.eclipse.rcp:eclipse.feature was found in searchPath resources
ERROR [0011] : Resolution attempt ended with exception: Provider local(file:///D:/Jenkins/workspace/Buckminster/org.eclipse.rcp/): Missing CSpec source required by component type eclipse.feature
ERROR Provider local(file:///D:/Jenkins/workspace/Buckminster/org.eclipse.rcp/): Missing CSpec source required by component type eclipse.feature
ERROR [0011] : Resolution attempt ended with exception: Provider local(file:///D:/Jenkins/workspace/Buckminster/de.tdb.dependencies/lib/org.eclipse.rcp/): Missing CSpec source required by component type eclipse.feature
ERROR Provider local(file:///D:/Jenkins/workspace/Buckminster/de.tdb.dependencies/lib/org.eclipse.rcp/): Missing CSpec source required by component type eclipse.feature
ERROR [0011] : Resolution attempt ended with exception: Provider local(file:///D:/Jenkins/workspace/Buckminster/de.tdb.dependencies/lib/plugins/org.eclipse.rcp/): Missing CSpec source required by component type eclipse.feature
ERROR Provider local(file:///D:/Jenkins/workspace/Buckminster/de.tdb.dependencies/lib/plugins/org.eclipse.rcp/): Missing CSpec source required by component type eclipse.feature