osgi 学习系列(十一)非eclipse环境启动osgi配置

news/2024/10/21 23:21:58/

先说下bundle打jar包

选中要打包的bundle,export,在弹出的view中选中下图所示


在Destination中设置导出路径,Options修改如下,直接Finish即可



下面看下启动配置的目录结构



 run.bat内容如下

java  
-Dosgi.noShutdown=true 
-Dserver.home=. 
-Dbundles.configuration.location=./configuration -Dlogback.configurationFile=./configuration/logbackConfiguration.xml 
-jar equinox.jar 
-console

该启动文件配置了配置目录的位置,日志配置文件的位置


config.ini内容如下

#Configuration File
#Sun May 27 15:56:26 CST 2012
osgi.clean=true
osgi.console=6230
osgi.noShutdown=true
osgi.bundles=osgi.bundles=file:./plugins/com.ferry.bussinessService_1.0.0.20120527.jar@start,\
./plugins/com.ferry.daoService_1.0.0.20120527.jar@3:start,\…
./basic_plugins/com.springsource.com.ibatis-2.3.4.726.jar@3:start,\…
osgi.bundles.defaultStartLevel=4
osgi.configuration.cascaded=false
eclipse.ignoreApp=true
eof=eof

该文件中需要注意的是osgi.bundles中声明多个jar的时候,如果需要换行要加“\”

@后的数字是启动级别,如果某个bunddle启动级别超过了osgi.bundles.defaultStartLevel设置的数字,那么该bunddle是无法启动起来。

osgi.console=6230 这里的6230是osgi telnet的端口号,可以用telnet服务来访问,开发项目的时候写shell脚本启动osgi服务的时候要用到

 

构建非eclipse运行环境的时候,之前我们osgi化的普通jar包要在MANIFEST.MF中加上

DynamicImport-Package:*,否则启动会报错



ibatis的sqlMap文件也要勾上


点击下载demo,里面有完整的环境,双击run.bat即可运行osgi控制台


http://www.ppmy.cn/news/283592.html

相关文章

Python基于指定范围筛选并剔除Excel表格中的数据

本文介绍基于Python语言,读取Excel表格文件,基于我们给定的规则,对其中的数据加以筛选,将不在指定数据范围内的数据剔除,保留符合我们需要的数据的方法。 首先,我们来明确一下本文的具体需求。现有一个Exce…

Linux ARM平台开发系列讲解(网络篇) 2.1 Marvell 88EA6321/6320 Switch 数据手册阅读之了解芯片功能

1. 概述 注意:88EA6321/88EA6320 和 88E6321/88E6320软件上无区别,区别在于硬件外围电源上 Marvell 88EA6321/88EA6320设备是一个集成了7端口千兆以太网交换机的单芯片,带有两个集成的千兆以太网收发器。该设备支持最新的IEEE 802.1音频视频桥接(AVB)标准。这些设备使用这…

如何使用ebpf kprobe探测内核函数

前言 在这之前, 我也曾使用过ebpf来改造我自己的项目, 最后也成功引入了项目, 有兴趣的同学可以查看此文章. 如何用ebpf开启tun网卡的TUNSETSTEERINGEBPF功能_我不买vip的博客-CSDN博客 但是该文章里并没有实质性的内容, 比如ebpf的map未曾涉及, 探测类型也未曾涉及, 只是一个空…

网络协议分析(2)判断两个ip数据包是不是同一个数据包分片

一个节点收到两个IP包的首部如下: (1)45 00 05 dc 18 56 20 00 40 01 bb 12 c0 a8 00 01 c0 a8 00 67 (2)45 00 00 15 18 56 00 b9 49 01 e0 20 c0 a8 00 01 c0 a8 00 67 分析并判断这两个IP包是不是同一个数据报的分片…

leetcode周赛第二题6230. 长度为 K 子数组中的最大和

题目: 给你一个整数数组 nums 和一个整数 k 。请你从 nums 中满足下述条件的全部子数组中找出最大子数组和: 子数组的长度是 k,且 子数组中的所有元素 各不相同 。 返回满足题面要求的最大子数组和。如果不存在子数组满足这些条件&#xff0…

MT7621_基础篇(2) 芯片资料了解 二

本篇依然为MT7621相关外设的介绍,pin和交换switch。(无介绍的模块将在分析章节研究些许细节) USB3主机控制器和PHY 手册中没有任何介绍,只有寄存器描述。详情见手册寄存器列表。 网络 PSE: 线速(1000 Mbps&#xff0…

Linux - 如何根据名字杀掉一个进程

Linux提供了许多工具来管理系统中的进程。你可以用它们来创建、克隆、甚至销毁进程(create, clone, destroy)。有时你可能需要在Linux中按名称杀死所有进程。在Linux中,有多种方法可以做到这一点。你可以使用pkill、pgrep、pidof和killall中的任何一个函数。在这篇文…

MTK-6235

1:UCS2Strlen mmi_ucs2strlenpfnUnicodeStrlen ---> mmi_ucs2strlen;AnsiiToUnicodeString mmi_asc_to_ucs2UnicodeToAnsii mmi_ucs2_to_ascpfnUnicodeStrncmp mmi_ucs2ncmp; 2: 墙纸 #define CFG_MMI_WA…