OSGi 学习(二)
上一篇说了很多虚的东西,现在说点别的。
OSGi系统的独立环境下的项目结构以及启动脚本。
先说项目结构,基于equinox的OSGi容器的项目结构如下所示:

bin中定义启动脚本,停止脚本之类的。
configuration定义配置文件,比如:config.ini,log4j.properties等配置文件。
environment包含了一些基础bundle,比如:spring系列;log4j等。
platform是基于OSGi上的,做二次开发的bundle。
这里面比较麻烦的就是,osgi这个bundle最好和configuration在同级目录下,这样生成的缓存文件就在configuration中。
再说说启动脚本。
直接上代码吧:
@echo off
if "%JAVA_HOME%" == "" (
echo The JRE was not found in directory %JAVA_HOME%. ^(JAVA_HOME^)
echo Please edit your environment and set the JAVA_HOME
echo variable to point to the root directory of your Java installation.
goto :EOF
)
set MEM_ARGS=-Xms512m -Xmx512m -Xmn256M -XX:PermSize=128m -XX:MaxPermSize=128m
set JAVA_OPTIONS=%JAVA_OPTIONS% -XX:+UseParNewGC -XX:ParallelGCThreads=5 -XX:CMSFullGCsBeforeCompaction=5 -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=40 -XX:+UseAdaptiveSizePolicy -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass
rem set CLASSPATH=%CLASSPATH%
rem "%JAVA_HOME%\bin\java" %MEM_ARGS% %JAVA_OPTIONS% -Dorg.osgi.framework.bootdelegation=javax.*,org.ietf.*,org.omg.*,org.w3c.*,org.xml.*,sun.*,com.sun.* -jar equinox.jar -console
set CLASSPATH=%CLASSPATH%;../org.eclipse.osgi-3.9.1.v20130814-1242.jar
set WEAVING_OPTIONS=-Daj.weaving.verbose=true -Dorg.aspectj.weaver.showWeaveInfo=true -Dorg.aspectj.osgi.verbose=true
"%JAVA_HOME%\bin\java" %MEM_ARGS% %JAVA_OPTIONS% -classpath %CLASSPATH% %WEAVING_OPTIONS% -Dorg.osgi.framework.bootdelegation=javax.*,java.*,org.ietf.*,org.omg.*,org.w3c.*,org.xml.*,sun.*,com.sun.* org.eclipse.core.runtime.adaptor.EclipseStarter -console
:EOF
简单说说bat的语法。
rem是个注释命令,该命令后的内容在程序执行的时候将不被显示与执行。
echo是一个回显命令,主要参数有off(不显示)和on(显示),一般用其输出一个特定的消息。
符号(@):关闭当前行的回显。
OSGi 学习(二)的更多相关文章
- emberjs学习二(ember-data和localstorage_adapter)
emberjs学习二(ember-data和localstorage_adapter) 准备工作 首先我们加入ember-data和ember-localstorage-adapter两个依赖项,使用 ...
- ReactJS入门学习二
ReactJS入门学习二 阅读目录 React的背景和基本原理 理解React.render() 什么是JSX? 为什么要使用JSX? JSX的语法 如何在JSX中如何使用事件 如何在JSX中如何使用 ...
- TweenMax动画库学习(二)
目录 TweenMax动画库学习(一) TweenMax动画库学习(二) TweenMax动画库学习(三) Tw ...
- Hbase深入学习(二) 安装hbase
Hbase深入学习(二) 安装hbase This guidedescribes setup of a standalone hbase instance that uses the local fi ...
- Struts2框架学习(二) Action
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...
- Python学习二:词典基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...
- Quartz学习--二 Hello Quartz! 和源码分析
Quartz学习--二 Hello Quartz! 和源码分析 三. Hello Quartz! 我会跟着 第一章 6.2 的图来 进行同步代码编写 简单入门示例: 创建一个新的java普通工程 ...
- SpringCloud学习(二):微服务入门实战项目搭建
一.开始使用Spring Cloud实战微服务 1.SpringCloud是什么? 云计算的解决方案?不是 SpringCloud是一个在SpringBoot的基础上构建的一个快速构建分布式系统的工具 ...
- DjangoRestFramework学习二之序列化组件、视图组件 serializer modelserializer
DjangoRestFramework学习二之序列化组件.视图组件 本节目录 一 序列化组件 二 视图组件 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组 ...
- SpringMVC入门学习(二)
SpringMVC入门学习(二) ssm框架 springMVC 在上一篇博客中,我简单介绍了一下SpringMVC的环境配置,和简单的使用,今天我们将进一步的学习下Springmvc的操作. mo ...
随机推荐
- Motan学习开篇
你已经走到这里了,后面只要耐心的走下去就行了. --佚名 入职新公司以后,公司使用dubbo框架,简单的照葫芦画瓢之后,也算是入手了,但是其中内部的实现的机制一概不懂.我单纯的有种好奇心,觉得每个 ...
- The First Pig Task
The First Pig Program 环境: Hadoop-1.1.2 pig-0.11.1 linux系统为CentOS6.4 jdk1.6 在伪分布 ...
- Windows 窗体—— 键盘输入工作原理
方法 注释 PreFilterMessage 此方法在应用程序级截获排队的(也称为已发送的)Windows 消息. PreProcessMessage 此方法在 Windows 消息处理前在窗体和控件 ...
- mac搭建PHP开发环境
在Mac系统上搭建Php服务器环境: LAMP: Linux Apache MySQL PHP MAMP: MACOS APACHE(自带) MYSQL(需自己安装) PHP(自带) 一.APACHE ...
- 用JS查看修改CSS样式(cssText,attribute('style'),currentStyle,getComputedStyle)
CSS样式定义方法 大家都知道,在为HTML设置样式的时候,通常有三种方法:内联样式,内部样式表,外部样式表. 1.内联样式: 内联样式表就是在HTML元素中的行内直接添加style属性. <d ...
- Linux数据流重定向
一.什么是数据流重导向: 数据流重导向 (redirect) 由字面上的意思来看,好像就是将『数据传导到其他地方去』,没错-数据流重导向就是将某个命令运行后应该要出现在屏幕上的数据, 给他传输到其他的 ...
- 问题-PopupMenu是哪个控件调用弹出的?
相关资料: http://bbs.csdn.net/topics/310195683 问题现象:今天有朋友问我个简单的问题,在多个Edit上弹出菜单,怎么判断是哪个Edit调用的.我想了想这个我还真不 ...
- ocp 1Z0-047 61-130题解析
61. Evaluate the following SQL statements that are issued in the given order:CREATE TABLE emp(emp_no ...
- JS一定要放在Body的最底部么? 聊聊浏览器的渲染机制
请参看文章 https://segmentfault.com/a/1190000004292479 网上的回答: 1.js加载会阻塞其它内容加载,使页面加载时间更长,尤其是js文件太大,有的页面js文 ...
- POJ 2762 Going from u to v or from v to u? (强连通分量缩点+拓扑排序)
题目链接:http://poj.org/problem?id=2762 题意是 有t组样例,n个点m条有向边,取任意两个点u和v,问u能不能到v 或者v能不能到u,要是可以就输出Yes,否则输出No. ...