• OSGi

    編輯
    本詞條由“匿名用戶” 建檔。

    OSGi是Eclipse基金會旗下的一個開放規范和開源項目。它是1999年3月成立的計算機軟件開放標準組織OSGi聯盟(原名為開放服務網關倡議)工作的延續。該基金會最初指定并維護OSGi標準。該聯盟在2020年底將其工作移交給了Eclipse基金會。OSGi規范描述了Java編程語言的模塊化系統和服務平臺,實現了一個完整的動態組件模型,在獨立的Java或VM環境中不存在。它有一個基于微服務的面向服務的架構,每個微服務都是作為一個擴展的Java類文件檔案(JAR(文件格式))實現的。

    描述

    編輯

    OSGi是圍繞著面向服務的架構而建立的。應用程序或組件被部署在包中,可以遠程安裝、啟動、停止、更新和卸載,而不需要重新啟動。對Java包/類的管理有非常詳細的規定。應用程序的生命周期管理是通過API實現的,這些API可以遠程下載管理策略。服務注冊表使包能夠檢測到新服務的添加或服務的移除,并進行相應的調整。

    OSGi規范的發展已經超越了最初對服務網關的關注,現在被用于從移動電話到開源Eclipse IDE的各種應用中。其他應用領域包括汽車、工業自動化建筑自動化、PDA、網格計算、娛樂、車隊管理和應用服務器

    2020年10月,OSGi聯盟宣布將標準化工作過渡到Eclipse基金會,之后它將關閉。所有的工件都被轉移到Eclipse基金會,在那里一個OSGi工作組繼續維護和發展該規范。

    規范過程

    編輯

    OSGi規范是由成員在一個開放的過程中開發的,并在OSGi規范許可下向公眾免費提供。OSGi聯盟有一個僅對成員開放的合規計劃。截至2010年11月,有七個OSGi框架的認證實施。一個單獨的頁面列出了認證和非認證的OSGi規范實施,其中包括OSGi框架和其他OSGi規范。

    架構

    編輯

    OSGi是一個用于開發和部署模塊化軟件程序和庫的Java框架。每個捆綁包都是一個緊密耦合的、可動態加載的類、jars和配置文件的集合,這些文件明確聲明了它們的外部依賴關系(如果有的話)。

    該框架在概念上分為以下幾個方面。

    服務層通過為純Java接口(POJI)或純Java對象(POJO)提供一個發布-查找-綁定模型,以動態方式連接捆綁。生命周期應用編程接口,用于捆綁物的生命周期管理(安裝、開始、停止、更新和卸載)。模塊定義了封裝和依賴性聲明的層次(捆綁包如何導入和導出代碼)。安全性通過將捆綁包的功能限制在預先定義的能力范圍內來處理安全方面的問題。

    定義了哪些方法和類在特定的平臺上是可用的。沒有固定的執行環境列表,因為它可能會隨著Java社區進程創造新的Java版本和發布而改變。然而,目前大多數OSGi的實現都支持以下集合。

    • CDC-1.0/Foundation-1.0
    • CDC-1.1/Foundation-1.1
    • OSGi/Minimum-1.0
    • OSGi/Minimum-1.1
    • JRE-1.1
    • 從 J2SE-1.2開始到J2SE-1.6

    Bundles

    編輯

    一個bundle是一組Java類和額外的資源,配備有MANIFEST.MF文件,其中包含所有的詳細列表。MF文件,其中包含所有內容的詳細列表,以及為賦予所包含的Java類組更復雜的行為所需的額外服務,以至于將整個集合視為一個組件。

    下面是一個典型的帶有OSGi頭文件的MANIFEST.MF文件的例子。

    OSGi

    例子中內容的含義如下。

    • Bundle-Name.為這個 bundle 定義了一個人類可讀的名字,只是為 bundle 指定了一個簡短的名字。
    • Bundle-SymbolicName。xxx需要的頭。

    內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/189986/

    (1)
    詞條目錄
    1. OSGi
    2. 描述
    3. 規范過程
    4. 架構
    5. Bundles

    輕觸這里

    關閉目錄

    目錄
    91麻精品国产91久久久久