《深入理解OSGi:Equinox原理、应用与最佳实践》笔记_1_运行最简单的bundlehelloworld
《深入理解OSGi:Equinox原理、应用与最佳实践》笔记_1_运行最简单的bundlehelloworld
买了周大大的OSGI的书看 先前完全没有基础 就靠这本书看看学学 顺便记一些笔记
今天先跳到了第5章的equinox启航部分
第一个简单的helloworld就遇到了问题....
因为eclipse版本和书中不同 用书中所说得到的全是异常....
搜索有关资料以后可以运行正常了 以此来记录一下:
在较新版本的eclipse中 不能通过java -jar org.eclipse.osgi_版本号.jar -console 正常启动了
原因在: http://stackoverflow.com/questions/9905607/equinox-start-error-console-bundle-is-missed
我也没有尝试这种方法 直接在eclipse中搭建
新下了eclipse 选了最新release的equinox的SDK
两者版本如下:
(下载地址分别为:http://www.eclipse.org/downloads/ 和 http://download.eclipse.org/equinox/ )
书中的helloworld源码是chapter 5中的 可以去hzbook上下载 不过那边下载速度挺慢的
我传了一份到百度网盘上 如果这样做是非法的 麻烦告知 会立即删除:
http://pan.baidu.com/s/1ksaeM
首先把sdk导入安装一下equinox的插件 这里只需要安装core-sdk就可以了:
(上面是灰的因为我已经装好了 把Group Items by category的钩子去掉 不然什么都没有)
安装完毕后 像平常导入java项目一样导入bundlehelloworld项目
之后配置一下debug configuration
可以直接右击项目选择debug然后配置
也可以在run上面的菜单里选择:
新建一个debug的配置规则
接下去和书中不同了 书中只有一个target platform的jar包 因为书中的eclipse比较老了 这样做会产生带来很多异常 用较新的eclipse 要带上其他的jar才可以:
如上
然后apply 然后debug就可以出现(run也同理)结果
《深入理解OSGi:Equinox原理、应用与最佳实践》笔记_1_运行最简单的bundlehelloworld的更多相关文章
- KiCad EDA 原理图库的最佳实践
KiCad EDA 原理图库的最佳实践 由于有 Alias 别名元件,可以不用一个每一个元件都有一个元件. 对每种元件类型建议一个元件库. 因为 Value 和 元件名是一样的,所以元件名要尽可能的简 ...
- Guava Cache 原理分析与最佳实践
前言 目前大部分互联网架构 Cache 已经成为了必可不少的一环.常用的方案有大家熟知的 NoSQL 数据库(Redis.Memcached),也有大量的进程内缓存比如 EhCache .Guava ...
- Mysql索引最佳实践笔记0524
#mysql5.7 innodb默认存储引擎 一.关于索引二.最佳实践三.避坑实践 一.关于索引 1.索引的作用 -提高查询效率 -数据分组.排序 -避免回表查询 -优化聚集查询 -用于多表join关 ...
- 【大数据和云计算技术社区】分库分表技术演进&最佳实践笔记
1.需求背景 移动互联网时代,海量的用户每天产生海量的数量,这些海量数据远不是一张表能Hold住的.比如 用户表:支付宝8亿,微信10亿.CITIC对公140万,对私8700万. 订单表:美团每天几千 ...
- web前端开发最佳实践笔记
一.文章开篇 由于最近也比较忙,一方面是忙着公司的事情,另外一方面也是忙着看书和学习,所以没有时间来和大家一起分享知识,现在好了,终于回归博客园的大家庭了,今天我打算来分享一下关于<web前端开 ...
- 《深入理解Android:Telephon原理剖析与最佳实践》学习笔记(系统框架)
Android智能手机的系统结构: 智能手机的硬件基本结构大多采用双处理器架构:主处理器和从处理器,主处理器主要运行开放式操作系统以及操作系统之上的应用,负责整个系统的控制,称之为AP,从处理 ...
- PHP核心技术与最佳实践--笔记
<?php error_reporting(E_ALL); /* php 5.3引入 延迟静态绑定 */ /* php5.4引入trait,用来实现多层继承 trait Hello{} trai ...
- jQuery编程最佳实践笔记
优化选择器 选择器优化已经不如从前那么重要,因为更多的浏览器实现了document.querySelectorAll()方法,所以选择的重担由jQuery转移到了浏览器. 但是仍然有一些技巧是需要 ...
- java 读取文件最佳实践
1. 前言 Java应用中很常见的一个问题,如何读取jar/war包内和所在路径的配置文件,不同的人根据不同的实践总结出了不同的方案,但其他人应用却会因为环境等的差异发现各种问题,本文则从原理上解释 ...
随机推荐
- Windows Azure入门教学系列 (九):Windows Azure 诊断功能
本文是Windows Azure入门教学的第九篇文章. 本文将会介绍如何使用Windows Azure 诊断功能.跟部署在本地服务器上的程序不同,当我们的程序发布到云端之后,我们不能使用通常的调试方法 ...
- Do not wait until the conditions are perfect to begin. Beginning makes the conditions perfect(转)
名言金句总是不嫌多,美国<公司>杂志(Inc.)列出让你在 2015 年受用无穷的十大金句,每天选一则当作一天的心灵指导,不只学习前人的精神和智慧,也能转化成工作和生活的动力!Cheers ...
- 基于visual Studio2013解决面试题之0506取和为m的可能组合
题目
- android使用xfire webservice框架远程对sqlserver操作(包括增删改查)的实例!!已在真机上试验通过
前两天,公司有一个利用android远程操作sqlserver的项目,对此我是毫无头绪的,但也挺感兴趣的,于是开始上网搜索方法,网上有挺多方法了,发现使用webservice的挺多的,不过我对这些技术 ...
- Boost Thread学习笔记二
除了thread,boost种:boost::mutexboost::try_mutexboost::timed_mutexboost::recursive_mutexboost::recursive ...
- 头文件 boost/cstdint.hpp
Header boost/cstdint.hpp 头文件 boost/cstdint.hpp 头文件 <boost/cstdint.hpp> 提供了用于编写要求指定整数宽度的可移植代码的 ...
- cpp check 分析
1 FileTabCharacterCheck 为什么检查: 因为对于一个TAB而言,所空的空格不定是固定的,如果在机器A上设置了是4个空格,显示正常,而在机器B上阅读,B机器是100个空格为一个TA ...
- 使用Material Design 创建App翻译系列----材料主题的使用(Using Material Theme)
上一篇是使用Material Design 创建App翻译系列--開始学习篇,进入正题: 新的材料主题提供了下面内容: 1. 提供了同意设置颜色板的系统部件组件. 2. 为这些系统组件提供了触摸反馈动 ...
- [每日一题] 11gOCP 1z0-052 :2013-08-30 差异的增量备份.....................................................A1
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/10669381 正确答案:AD 执行增量备份操作时,首先需要的是增量基本备份(increme ...
- Swift中使用typealias定义一个闭包closure
在OC中我们定义一个Blocks是这样定义的: typedef void (^ZWProgressHUDCompletionBlock)(); 在Swift中定义一个闭包是这种: typealias ...