zoukankan      html  css  js  c++  java
  • 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.200710121455.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

      

  • 相关阅读:
    021.day21 反射 Class类 反射常用操作
    020.day20 线程概述 多线程优缺点 线程的创建 线程常用方法 生命周期 多线程同步
    019.day19 缓冲流 对象流 标准输入输出流
    018.day18 map集合如何实现排序 File类 IO流 字节流 字符流 编码
    017.day17 Map接口 克隆 treeSet集合排重缺陷
    016.day16 HashSet TreeSet 比较器Comparable Comparator
    015.day15
    014.day14
    013.day13
    线程
  • 原文地址:https://www.cnblogs.com/haiq/p/3899370.html
Copyright © 2011-2022 走看看