为了更好的学习Eclipse插件开发,决定详细了解一下Eclipse架构和源码,顺便学习一下架构设计,与大家分享。
Eclipse在3代采用OSGi框架来管理组件,OSGi框架Eclipse的实现是equinox项目,这个项目的信息我后面的学习过程中和大家一起分享,本章只是介绍一下Eclipse的启动相关的信息。

以下说明的eclipse以3.7版本为主。
Eclipse由eclipse.exe执行启动,Eclipse.exe主要是搜集系统信息,加载eclipse.ini进行配置,然后启动JVM。

Eclipse.ini包括两部分,其一是提供给eclipse.exe执行的JVM参数信息,其二是加载。配置信息的结果可以在Eclipse->About Eclipse SDK->Installation Details->Configuration查看。Eclipse.ini中的配置如下:
1.启动
-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
这段配置是制定启动的jar。这个参数是提供给eclipse.exe启动Java时用的,Java启动时调用该包中Main Class,即org.eclipse.equinox.launcher.Main方法启动。这个类的执行过程会在后面的介绍。
2.类库
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502
采用OSGi框架后,eclipse启动时需要使用OSGi框架的dll文件,为equinox框架提供本地函数支持。
3.DEBUG
-debug:开启debug模式
4.加载闪屏
-showsplash
org.eclipse.platform

-nosplash标识不显示
5.开发模式
-dev启动开发模式,目前还没研究过
6.指定JRE位置
-vm
c:\.....\javaw.exe
如果没有指定,eclipse.exe将自动搜索JRE
7.虚拟机参数
-vmargs
-Xms40m
-Xmx512m
在配置中,虚拟机参数是最后一行,它之后的所有数据都将加入到vm参数中。

其他配置参数
-framework:OSGi框架相关配置,暂时没了解用途,深入了解启动类后给出说明。
-os:指定当前操作系统,一般由eclipse.exe提供
-wf:窗口框架,一般由eclipse.exe提供。因为在不同操作系统中窗口框架一般不同。
例如:Windows的win32、wpf(Vista窗体)、motif、gtk、photon、carbon、cocoa
-arch:x86,x86-64,一般由eclipse.exe提供

下一节主要将eclipse的启动类org.eclipse.equinox.launcher包的内容

转载于:https://www.cnblogs.com/blackmagus/archive/2011/09/22/2185017.html

Eclipse探秘-第一章-Eclipse启动(1)相关推荐

  1. 第一章 Hadoop启动Shell启动脚本分析--基于hadoop-0.20.2-cdh3u1

    我的新浪微博:http://weibo.com/freshairbrucewoo. 欢迎大家相互交流,共同提高技术. 第一章 Hadoop启动Shell启动脚本分析 第一节 start-all.sh脚 ...

  2. ucore - 第一章 - bootloader启动过程

    目录 1.概述 2.引用 3.关键字 4.cup上电过程 5.bootloader 5.1.关闭中断.初始化段寄存器 5.2.开启A20总线 5.3.初始化GDT表 5.3.1.实模式和保护模式 5. ...

  3. 【连载】《linux入门很简单》电子版——作者:刘金鹏(第一章初来乍到——启动)...

    在光驱中躺着,等待着电脑启动的时候,就像刚刚毕业的大学生 等待第一次面试一样紧张.每一秒钟过得像一小时一样,心里一直在 打鼓:怎么还不启动呢?难道看着光盘封面不好看就不打算用了?难道这小子忽然被女朋友 ...

  4. Netty源码分析第1章(Netty启动流程)----第4节: 注册多路复用

    Netty源码分析第1章(Netty启动流程)---->第4节: 注册多路复用 Netty源码分析第一章:Netty启动流程   第四节:注册多路复用 回顾下以上的小节, 我们知道了channe ...

  5. 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!在eclipse.ini中为eclipse指定jdk启动...

    启动 Eclipse 弹出"Failed to load the JNI shared library jvm.dll"错误的解决方法! 原因1:给定目录下jvm.dll不存在. ...

  6. 修复Eclipse在Mac OSX下启动时卡住问题

    2019独角兽企业重金招聘Python工程师标准>>> 问题 问题出现在当你在之前的session未完全关闭时启动Eclipse,也就是说,你强行关闭了Eclipse.如果你搜索这些 ...

  7. Kali Linux 秘籍 第一章 安装和启动Kali

    第一章 安装和启动Kali 作者:Willie L. Pritchett, David De Smet 译者:飞龙 协议:CC BY-NC-SA 4.0 简介 Kali Linux,简称Kali,是用 ...

  8. 对于IDEA 导入eclipse项目后 没有办法启动部署 以及javax.servlet.http不存在

    对于IDEA 导入eclipse项目后 没有办法启动部署 以及javax.servlet.http不存在 1.打开Project Structure 进入项目结构 2.对于项目一开始可能会没有 web ...

  9. 金算盘 未找到 oracle,金算盘软件操作手册 第一章安装、启动和退出

    第一章安装.启动和退出 本章主要介绍金算盘8E/ERP的运行环境,以及在Windows 9X/NT.Windows2000/XP中的安装.运行和退出方法. 第一节运行环境 一.单用户版 硬件环境 配备 ...

  10. android eclipse 错误提示,Android Eclipse无法启动.发生了错误.看日志文...

    我知道StackOverflow(以及其他人)已多次询问过这个问题,但我发现的解决方案都不适用于我. 正如您在标题中看到的那样,我在启动Android eclipse时收到以下错误消息: an err ...

最新文章

  1. win10安装虚拟机提示主IP地址显示网络信息不可用
  2. 【目标检测】(8) ASPP改进加强特征提取模块,附Tensorflow完整代码
  3. 自动驾驶汽车视觉- 图像特征提取与匹配技术
  4. 【译】在Asp.Net中操作PDF – iTextSharp -利用块,短语,段落添加文本
  5. 算法自动化测试的挑战与思考
  6. PDA(Personal Digital Assistance)
  7. python方向-目前最全的Python的就业方向
  8. 管理系统界面设计python_python图形化界面设计(wxpython)一布局管理
  9. [PHP 安全] pcc —— PHP 安全配置检测工具
  10. hdu4554 A Famous Game 概率期望
  11. 分享一些方便实用的素材网站
  12. git啊,你让我好费劲啊
  13. 百度网盘自动备份php,服务器自动备份脚本上传至百度云存储
  14. android原生插件,适用于 Android 的原生 (C++) 插件
  15. 在 MacBook 中如何将外置屏幕设置为主屏幕?
  16. SpringSecurity视频教程
  17. 服务器搭建bbr加速
  18. 软件推荐(6):滴答清单
  19. 微博官方自助服务一键批量取消微博全部关注方法
  20. 如何删除联想lenovo硬盘的隐藏分区

热门文章

  1. ceph--磁盘和rbd、rados性能测试工具和方法
  2. ARP协议-路由交换原理5-【HCNA笔记】
  3. 一个示例让你明白界面与数据分离
  4. 前端开发必须知道的JS(二) 闭包及应用
  5. [2018.10.31 T3] 玩
  6. vue学习笔记-9-tab选项卡小案例
  7. mysql事务的两点特性_MySQL基础篇(06):事务管理,锁机制案例详解
  8. mysql自定义函数优点_MySQL自定义函数
  9. appiumpython框架实例_GitHub - feiyangzhu/python-appium: 基于PageObject UI自动化测试框架,支持Android/iOS...
  10. sqlserver高可用方案_PowerJob 的自实现高可用方案,妙妙妙