日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用Apache Felix文件安装配置OSGi服务

發(fā)布時間:2023/12/3 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Apache Felix文件安装配置OSGi服务 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近有關(guān)托管服務(wù)的帖子讓我想起了我值得一提的Apache Felix File Install中的一項(xiàng)功能。 在與Holger合作進(jìn)行項(xiàng)目時,我從他那里了解到File Install不能僅用于管理包。 它還監(jiān)視配置文件,并在托管服務(wù)各自的配置更改時更新托管服務(wù)。

文件安裝還可以配置托管服務(wù)工廠等。 但是,我發(fā)現(xiàn)對于配置數(shù)據(jù)通常是特定于環(huán)境的托管服務(wù)(例如打印機(jī)URL,數(shù)據(jù)庫URL,TCP端口)特別有用。 最好的事情是:它使您擺脫了以編程方式擺弄Configuration Admin的麻煩。

怎么運(yùn)行的

可以告訴“文件安裝”監(jiān)視某個文件夾(通常通過系統(tǒng)屬性)。 然后,您可以將配置文件(普通Java屬性文件)放入該文件夾。 配置文件通過命名約定與托管服務(wù)關(guān)聯(lián)。 文件名的格式必須為<pid> .cfg。 如果存在具有匹配PID的托管服務(wù),則在文件更改時將對其進(jìn)行更新。

我在GitHub上放了一個最小的獨(dú)立示例。 它有一個捆綁包,提供了如下實(shí)現(xiàn)的EchoService:

public class EchoService implements ManagedService {public void updated( Dictionary<String, ?> properties ) {if( properties != null ) {System.out.println( "port = " + properties.get( "port" ) );}}}

易于發(fā)現(xiàn):其全部目的是在配置更改時將其打印出來。

EchoService已使用echoservice的PID注冊。 除捆綁軟件外,還有一個包含配置文件的項(xiàng)目。 它名為echoservice.cfg并具有一個屬性: port = 7 。

啟動配置將必要的軟件包組合在一起:OSGi框架(此處為Equinox),示例軟件包,Felix Gogo Shell(用于診斷問題)和文件安裝以及Configuration Admin。 這些虛擬機(jī)參數(shù)

-Dfelix.fileinstall.dir="${project_loc:com.codeaffine.fileinstall.example.config}" -Dfelix.fileinstall.noInitialDelay=true -Dfelix.fileinstall.poll=1000

告訴“文件安裝”監(jiān)視項(xiàng)目文件夾并每秒檢查一次更改。 多虧了project_loc變量,啟動配置可在整個開發(fā)環(huán)境中移植。

現(xiàn)在我們啟動OSGi框架,控制臺輸出將如下所示:

port = 7

如果我們對echoservice.cfg文件進(jìn)行更改并稍等片刻,我們將看到EchoService已更新。 新配置將顯示在控制臺日志中。

更多的

如果這引起您的興趣,您可能需要更深入地了解File Install。 它還支持托管服務(wù)工廠,可以寫回配置更改,可以替換屬性值,以及監(jiān)視多個文件夾。 文檔頁面包含所有詳細(xì)信息。

參考:在Code Affine博客上,從我們的JCG合作伙伴 Rudiger Herrmann 使用Apache Felix File Install配置OSGi服務(wù) 。

翻譯自: https://www.javacodegeeks.com/2013/10/configure-your-osgi-services-with-apache-felix-file-install.html

總結(jié)

以上是生活随笔為你收集整理的使用Apache Felix文件安装配置OSGi服务的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。