osgi 學習系列(三)自定義osgi控制台命令

2021-08-26 22:15:39 字數 2087 閱讀 9320

為了後面demo的結果顯示需要先說下自定義osgi控制台命令,自定義命令的類必須實現org.eclipse.osgi.framework.console.commandprovider介面

該介面中只有乙個方法public string gethelp()用於在help方法中新增我們自定義命令的描述

自定義命令也很簡單,只要寫乙個以下劃線+命令的方法即可,比如我想自定義乙個say命令

public void _say(commandinterpreter ci)
這個commandinterpreter引數必須要,否則找不到命令,ci.nextargument()獲取osgi控制台命令後跟的引數

通過gethelp方法就可以把該自定義命令的描述加到osgi控制台help命令中

@override

public string gethelp()

下面建個bundle來演示一下

finish完成

開啟manifest.mf檔案,匯入org.eclipse.osgi.framework.console和org.osgi.framework包

建立乙個類並實現commandprovider和bundleactivator介面

類**如下

public class customizedcommand implements commandprovider, bundleactivator 

@override

public void stop(bundlecontext arg0) throws exception

public void _say(commandinterpreter ci)

@override

public string gethelp()

}

開啟manifest.mf,新增bundle-activator

run執行後,在osgi控制台輸入ss會看到我們建的bundle處於執行狀態

這裡自定義的bundle的id比較大,是因為configuraton的快取沒有清理,我們可以在settings中把clear the configuration area before launching勾上

輸入自定義命令say後會呼叫 _say方法

在help方法中也能找到我們自定義的命令描述

osgi控制台自定義命令就說到這,這個demo中用到的jar包為

org.eclipse.osgi_3.7.2.v20120110-1415.jar

對於剛接觸osgi,流程可能不太熟悉所以前面幾章截圖比較多,後面章節對基礎的東西就不多加贅述。

VSTO之旅系列 三 自定義Excel UI

本專題概要 引言 在上乙個專題中為大家介紹如何建立excel的解決方案,相信大家通過從上面乙個專題之後了解了excel的物件模型,以及office兩種解決方案的,看完上乙個專題之後,肯定很多朋友想為excel自定義屬於自己的ui介面,例如,有這樣的一些疑問 是否可以使用vsto來自定義選項卡呢?是否...

十三 自定義元件

有時候需要自定義元件使得web程式更加豐富,extjs也提供了自定義元件的功能,主要通過ext.define來實現。下面先新建乙個mypanel.html檔案,其內容如下 然後新建乙個mypanel.js和xzypanel.js檔案,自定義的元件名稱為xzypanel,xzypanel.js檔案的內...

electron 學習筆記(三) 自定義標題欄

第一章 基礎知識點 第二章 electron vue 第三章 自定義標題欄 總結electron專案預設有自己的標題欄 包含標題 最小化 最大化,關閉 根據專案需求,可以去掉,定製開發 如下 src main index.js mainwindow newbrowserwindow 如下 src r...