Equinox P2 介绍(一)Getting Start
一直觉得 Equinox 的 P2 是个神秘的东西,常常使得 Eclipse 或 Equinox 表现出一些奇怪的行为,于是找来官方文档读一读,试图更好地理解与应用 Equinox 。
官方文档很多,只能挑其中比较关注的部分来阅读,边看边记下吧。
1、 Getting Start ---原文:http://wiki.eclipse.org/Equinox/p2/Getting_Started
P2 全称是 provisioning platform ,用于替代 Eclipse 3.4 及以前版本中的 Update Manager 功能,用于管理 Eclipse 插件的安装、搜索升级等。
P2 的UI替换了原来的 Update Manager 功能的菜单 Help > Software Updates,包含了安装、升级站点管理等功能。
Eclipse 中 P2 相关的目录和文件有:
eclipse/
configuration/
config.ini
org.eclipse.equinox.simpleconfigurator/
bundles.info
dropins/
features/
p2/
plugins/
eclipse.exe
eclipse.ini
bundles.info 列出了当前安装的全部插件,这些插件在启动时将被运行。通过P2的界面进行插件的安装(install)或者卸载将导致此文件的修改。
dropins 目录受到 P2 监视,用于手动往目录放入插件文件的方式安装插件,这点类似于以前版本(3.4以前)的 plugins 目录。但与以前不同,P2 并不保证放入 dropins 的目录就一定会被安装到系统中(注:这点值得注意),如果放入的插件无法被正确解析,或者与现有的已安装的插件产生冲突,则插件将不会得到安装,且不会输出任务异常信息到日志。
为了保持向前兼容,P2 也会检测安装放入到 plugins 目录的插件,但这些手工放入的插件会被特殊对待,这其中的规则是:如果手工安装的插件,也只能手工卸载(uninstall),而无法通过 P2 卸载。推荐的方法是:尽量避免对 plugins 目录进行手工操作,手工操作应通过 dropins 目录进行。
dropins 支持的目录结构:
eclipse/
dropins/
org.eclipse.core.tools_1.4.0..jar
org.eclipse.releng.tools_3.3.0.v20070412/
plugin.xml
tools.jar
... etc ...
...
eclipse/
dropins/
eclipse/
features/
plugins/
eclipse/
dropins/
emf/
eclipse/
features/
plugins/
gef/
eclipse/
features/
plugins/
... etc ...
eclipse/
dropins/
emf.link
诊断:
如果放入 dropins 的插件未被安装,首先检查 org.eclipse.equinox.ds 和 org.eclipse.equinox.p2.reconciler.dropins 是否被标识为自动启动(auto-start)(注:不清楚这两个指的是插件名称还是两个配置项,仅记录原文档的描述,以后有新发现了再更新)。
如果发生了解析错误,默认情况下错误信息会被完全忽略而不会向日志或控制台输出。如果需要将这些信息输出到日志,可以在 .option 文件中加入以下的配置项,并且以参数 "-debug path/to/.options" 运行。
org.eclipse.equinox.p2.core/debug=true
org.eclipse.equinox.p2.core/reconciler=true
Equinox P2 介绍(一)Getting Start的更多相关文章
- Equinox P2的学习
product.configuration 点击“Add按钮”并添加以下插件: org.eclipse.equinox.p2.ui org.eclipse.equinox.p2.ui.sdk org. ...
- eclipse p2更新官网wiki的例子
官网的cvs好像没了,不过在github上找到一份,可用. https://github.com/anthonydahanne/make-p2-buildable-with-tycho/tree/ma ...
- 定制Eclipse IDE之功能篇(一)
上文回顾:定制Eclipse IDE之界面篇 这一篇文章将记录一些Eclipse插件拓展(extension),简单讲述常用拓展的用法,但可能不会那么详细. 我的主要插件的拓展如下: 一.or ...
- 【JAVA 文件概述】
一.概述 使用此类的原因: 该类将文件或者文件夹封装成对象.方便对文件与文件夹的属性信息进行操作.File对象作为参数传递给流的构造函数.要求:使用File类的常用方法. windows平台下,目录分 ...
- 使用Eclipse Installer安装Eclipse
由于一些原因,需要重新安装Eclipse,登陆到Eclipse官网下载Eclipse时发现社区又推出了Eclipse Installer.所以就下下来尝尝鲜. 刚开始确实有些选项不太明白,不过现在挺喜 ...
- 深入理解OSGI:Java模块化之路
简介 Java可能是近20年来最成功的开发技术,因其具备通用性.高效性.平台移植性和安全性而成为不同硬件平台理想的开发工具.从笔记本电脑到数据中心,从游戏控制台到科学超级计算机,从手机到互联网,Jav ...
- 安装Java的IDE Eclipse时出现java.net.SocketException,出现错误Installer failed,show.log
ERROR: org.eclipse.equinox.p2.transport.ecf code=1002 Unable to read repository at http://download.e ...
- 【转】eclipse luna 无法安装veloeclipse问题
转载地址:https://code.google.com/p/veloeclipse/issues/detail?id=47 I tried to install veloeclipse 2.0.8 ...
- linux下安装jdk+tomcat+eclipse+mysql
我的环境:主机是win7的,虚拟机是VWare Workstation 6.0 ,linux系统为Red Hat Enterprise Linux 5 64位 各软件版本:jdk是jdk-6u ...
随机推荐
- mysql中显示当前数据库下的所有表,包括视图。
环境说明: mysql版本:5.5.57-log 操作系统:Red Hat Enterprise Linux Server release 6.6 (Santiago) 需求:查看当前数据库下所有的表 ...
- C# winform开发嵌套Chrome内核浏览器(WebKit.net)开发(一)
https://www.cnblogs.com/Maxq/p/6566558.html WebKit.net是对WebKit的.Net封装, 使用它.net程序可以非常方便的集成和使用webkit作为 ...
- 关于WPF自定义控件(导航)
1.在WPF中自定义控件(1)概述 2.在WPF中自定义控件(2) UserControl 3.在WPF中自定义控件(3) CustomControl (上) 4.在WPF中自定义控件(3) Cust ...
- Unique ID Generate Notes
Unique ID generation in distributed systems http://www.slideshare.net/davegardnerisme/unique-id-gene ...
- MySQL使用DDL语句创建表
一.使用DDL语句创建表 DDL语言全面数据定义语言(Data Define Language) 主要的DDL动词: CREATE(创建).DROP(删除).ALTER(修改) TRUNCATE(截断 ...
- Linux oracle数据库创建表空间、用户并赋予权限
管理员用户登录oracle数据库 1.创建临时表空间 select name from v$tempfile;查出当前数据库临时表空间,主要是使用里面的存放路径: 得到其中一条记录/opt/oracl ...
- 【代码审计】iZhanCMS_v2.1 前台GoodsController.php页面存在SQL注入漏洞分析
0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...
- 怎么打乱List中元素的顺序
使用Collections类中shuffle随机打乱List内部元素顺序 原文地址:http://blog.csdn.net/warren2013/article/details/17414771 / ...
- 使用 requests 访问 HTTPS
当我们访问 HTTPS 的网站时,需要进行证书验证,在浏览器中可以自动处理验证问题,在 Python 中有以下两种做法: import requests //不进行证书验证,但这种方式会出现警告,如下 ...
- com.baidu.mapapi.CoordType
2.2.2升级到3.0.1百度报错了, 一:请检查.jar,.so是否是最新的 二:clear