实战_3:新建产品配置(product)并导出项目
产品配置Product
产品配置用于定义和管理RCP应用的多个方面特征。并支持将RCP项目导出为部署包(类似eclipse压缩包),可以直接部署到其他环境上使用。
产品配置必须新建一个 扩展名为 .product的配置文件,一般在根目录下创建。
如果产品配置存在问题,导致项目不能正常导出的话,就很痛苦了。所以这一步相当重要,另外一些版本的eclipse使用product配置导出项目时存在问题。
网上也有资料介绍使用Tycho管理和打包项目的。
新建产品配置:
右键项目 -> New -> Product Configuration -> Next -> 设置File:xxxx.product -> 选中:Use an existing product -> 下拉选择当前RCP项目的ID -> Finish


配置文件调整:
产品配置创建完成后,还需要进行调整:
(1)Overview界面的ID,不能与plugin.xml中的Overview界面的ID一致,否则启动项目或者导出会失败:

(2)Overview界面的下列选项要与项目相关

(3)增加start level:
在configuration配置页中,增加推荐的start levels,否则会造成导出后应用启动失败。
使用Add Recommended按钮增加:

如果导出或者启动下面的报错信息,则缺少start level:
org.eclipse.e4.core.di.InjectionException: Unable to process "CommandProcessingAddon.broker": no actual value was found for the argument "IEventBroker".
(4)增加必要的插件集
product文件 =》 contents页签 =》Add Required Plug-ins

启动应用:
产品配置 -> OverView -> Testing -> Launch an Eclipse application

导出exe:
产品配置的一个很重要的作用就是将项目打包输出, 并生成exe文件,这也是开发人员使用product的主要目的。
产品配置-> OverView -> Exporting -> Eclipse Product export wizard -> 勾选 Synchronizer before exporting(保证导出最新版本) -> 选择导出路径: Destination Directory -> Finish
打开导出目录 -> 打开eclipse -> 执行eclipse.exe -> 会在此目录下生成workspace



定制exe:
修改EXE文件名称:
产品配置 -> Launcher -> 设置Launch Name
launcher name就是最后生成的EXE文件名称

修改EXE图标:
Launcher页签中可指定exe图标:

导出错误:
导出后启动报错—服务未注册:
java.lang.RuntimeException: Application "jfcs.application" could not be found in the registry. The applications available are: org.eclipse.ant.core.antRunner, org.eclipse.e4.ui.workbench.swt.E4Application,
此种情况一般是因为导出的包中,缺少依赖jar包。 此时需要打开product配置文件,添加依赖jar包。此种情况多见于先创建product配置,后来又引入了新的jar包。
打开product配置 =》contents =》 Add Required Plug-ins

eclipse版本问题:
目前使用的eclipse-rcp-2019-12-R-win32-x86_64,可以正常使用product导出项目,但是之前使用的其他版本(2019-03安装版),导出存在问题,不能导出项目。也测试过另外一个解压版的eclipse,也没有问题。貌似安装版的eclipse存在此问题,很郁闷。

实战_3:新建产品配置(product)并导出项目的更多相关文章
- (转)SVN 服务端、客户端安装及配置、导入导出项目
SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...
- SVN 服务端、客户端安装及配置、导入导出项目
http://blog.csdn.net/xcy13638760/article/details/12994923 http://www.cnblogs.com/armyfai/p/3985660.h ...
- Spring Boot实战(2) Spring常用配置
1. Bean的Scope scope描述Spring容器如何新建Bean的实例.通过注解@Scope实现,取值有: a. Singleton:一个Spring容器中只有一个Bean的实例.此为Spr ...
- 快速新建并配置一个eslint+prettier+husky+commitlint+vue3+vite+ts+pnpm的项目
前置准备 一台电脑 vscode pnpm vscode插件:ESLint v2.2.6及以上 vscode插件:Prettier - Code formatter v9.5.0及以上 vscode插 ...
- PowerDesigner建模应用(一)逆向工程,配置数据源并导出PDM文件
物理数据模型(Physical Data Model)PDM,提供了系统初始设计所需要的基础元素,以及相关元素之间的关系:数据库的物理设计阶段必须在此基础上进行详细的后台设计,包括数据库的存储过程.操 ...
- [实战]MVC5+EF6+MySql企业网盘实战(12)——新建文件夹和上传文件
写在前面 之前的上传文件的功能,只能上传到根目录,前两篇文章实现了新建文件夹的功能,则这里对上传文件的功能进行适配. 系列文章 [EF]vs15+ef6+mysql code first方式 [实战] ...
- [实战]MVC5+EF6+MySql企业网盘实战(11)——新建文件夹2
写在前面 上篇文章实现了创建文件夹的功能,这里面将实现单击文件夹,加载列表的功能. 系列文章 [EF]vs15+ef6+mysql code first方式 [实战]MVC5+EF6+MySql企业网 ...
- Jenkins持续集成企业实战系列之Jenkins配置演示-----03
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Spring Boot微服务电商项目开发实战 --- 多环境部署配置、端口号统一配置及Dubbo提供者消费者实现
昨天已经搭建好了SpringBoot基于Maven的基础父子级项目,今天开始进入项目分模块及分布式实现.首先我们基于昨天的项目,在父级工程下建lyn-sys,lyn-customer,lyn-good ...
随机推荐
- class选择器,外部样式表,选择器优先级
class选择器: 先在相应标签中设置一个class属性,如class=“class名”.class名{ ……css样式}注:class名以英文字母开头,可以多个标签重复使用.优先级:标签名选择器 & ...
- 未能加载文件或程序集“MySql.Data”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
未能加载文件或程序集“MySql.Data”或它的某一个依赖项.找到的程序集清单定义与程序集引用不匹配. (异常来自 HRESULT:0x80131040) 说明: 执行当前 Web 请求期间,出现未 ...
- PAT Advanced 1004 Counting Leaves (30) [BFS,DFS,树的层序遍历]
题目 A family hierarchy is usually presented by a pedigree tree. Your job is to count those family mem ...
- Ubuntu16.04 + ROS下串口通讯
本文参考https://blog.csdn.net/weifengdq/article/details/84374690 由于工程需要,需要Ubuntu16.04 + ROS与STM32通讯,主要有两 ...
- 主导SEO成败的关键是细节的布局,细数SEO三大布局思路
有的人认为SEO操作就类似车间工作,有一个完整的流程,整套流程下来网站就会有一个好的排名.这样是不对的,优化的着重点是要有一个好的思维,技巧和策略,把这些着重点相结合的运用到SEO优化中,很大的机率会 ...
- 梯度消失、梯度爆炸以及Kaggle房价预测
梯度消失.梯度爆炸以及Kaggle房价预测 梯度消失和梯度爆炸 考虑到环境因素的其他问题 Kaggle房价预测 梯度消失和梯度爆炸 深度模型有关数值稳定性的典型问题是消失(vanishing)和爆炸( ...
- Spring Bean的生命周期、Spring MVC的工作流程、IOC,AOP
1.Spring Bean的生命周期? (1)构造方法实例化bean. (2)构造方法设置对象属性. (3)是否实现aware接口,三种接口(BeanNameAware,BeanFactoryAwar ...
- 【MySQL参数】-innodb_flush_method
innodb_flush_method这个参数控制着innodb数据文件及redo log的打开.刷写模式,对于这个参数,文档上是这样描述的:有三个值:fdatasync(默认),O_DSYNC,O_ ...
- MyBatis从入门到精通(第4章):MyBatis动态SQL【foreach、bind、OGNL用法】
(第4章):MyBatis动态SQL[foreach.bind.OGNL用法] 4.4 foreach 用法 SQL 语句中有时会使用 IN 关键字,例如 id in (1,2,3).可以使用 ${i ...
- LeetCode No.163,164,165
No.163 FindMissingRanges 缺失的区间 题目 给定一个排序的整数数组 nums ,其中元素的范围在闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间. 示例 ...