Ben Hale

Ben Hale

博文Ben Hale

Bundlor 1.0.0.RC1 釋出

工程 | 2009年12月23日 | ...

我非常激動地宣佈 Bundlor 1.0.0.RC1 現已釋出。自 M6 版本釋出以來,Bundlor 進行了大量更改,包括檢測和警告標準的增加,以及 ANT 和 Maven 配置的改進。

此里程碑標誌著 1.0.0 版本的特性已完成。如果沒有重大問題,此候選版本將很快釋出為 1.0.0.RELEASE。

檢測和警告標準

Bundlor 現在檢測以下位置的 Java 型別

Bundlor 還掃描其生成的清單以查詢以下問題並根據它們生成警告

標準化和簡化配置

在 RC1 版本釋出之前,Bundlor 最糟糕的部分之一是各種前端(命令列、ANT、Maven)的功能和配置不一致。不幸的是,RC1 必須更改所有這些配置引數,但最終結果是 Bundlor 配置的一致性,在許多情況下也得到了簡化。

請參閱 Bundlor 文件,瞭解您的配置選項……

dm Server 2.0.0.M6

工程 | 2009年10月27日 | ...

dm Server 2.0.0.M6 現已釋出,可從此處下載。

此版本緊隨 M5 版本釋出,我們正逐步接近第一個 2.0.0 候選版本。這一次,我們非常注重修復未解決的缺陷,並且只添加了少量新功能。請檢視 M6 釋出說明,瞭解我們修復的所有缺陷和新增的功能的完整詳細資訊。請繼續在我們的部落格評論區、論壇JIRA 上提供您的反饋。

新增和值得注意

將 dm Kernel 和 dm Server 作為服務執行

dm Kernel 和 dm Server 現在可以在 Windows 和 UNIX 機器上作為服務啟動。要在 Windows 上安裝服務,您需要編輯$HOME/bin/service/conf/wrapper.conf檔案以正確列出核心或伺服器的路徑。然後執行$HOME/bin/service/windows.bat install。還有其他要執行的命令,dm Server 文件介紹了其他命令。

UNIX 使用者更容易,因為$HOME/bin/service目錄包含許多init.d相容……

dm Server 2.0.0.M5

工程 | 2009年10月12日 | ...

dm Server 2.0.0.M5 現已釋出,可從此處下載。

我們正在接近 2.0.0 釋出週期的尾聲,因此此里程碑的大部分工作都集中在鎖定使用者互動模型上。請檢視 M5 釋出說明,瞭解我們一直在做的工作的完整詳細資訊。請繼續透過我們的部落格評論、論壇JIRA 提供反饋。

也請關注部落格,瞭解本“新增和值得注意”中提及的許多新功能的詳細文章。

新增和值得注意

部署配置檔案

屬性檔案現在可以部署在pickup目錄或任何已配置的儲存庫中。然後,這些檔案的內容可在 OSGi 的ConfigurationAdmin中訪問,其 PID 指定為不帶.properties副檔名的檔名。

計劃屬性和特性

計劃現在可以擁有用於替換的全域性定義屬性。

<attributes>
	<attribute name="version" value="[1.0.0, 2.0.0)"/>
</attributes>

<artifact type="bundle" name="org.springframework.context.support" version="${version}"/>

計劃中的工件可以定義屬性,這些屬性在部署時轉換為 Bundle 清單頭。

<artifact type="bundle" name="my.webapp" version="[1.0.0, 2.0.0)">
	<property name="Web-ContextPath" value="/foo"/>
</artifact>

管理控制檯

管理控制檯的“工件”頁面已進行了美化,以樹形結構呈現使用者安裝工件的依賴項。此外,這些樹的每個級別都進行了延遲載入,從而提高了載入時間效能。

Admin Console

命令列 Shell

dm Server 現在附帶一個命令列 shell,以取代以前使用的 Equinox 控制檯。此控制檯可透過-shell啟動命令在本地訪問。

$ bin/startup.sh -shell
<KE0001I> Kernel starting.
<KE0002I> Kernel started.
<SH0001I> dm Kernel ssh shell available on port 2402.

     @@@ ***
    @@@ *****            .__.                  .__.            .__.  .__.
   @@@@ ******         __|  |  _____     _____.|  |__    ___…

Bundlor 增加了對 Blueprint 服務的支援

工程 | 2009年9月26日 | ...

我很高興地宣佈,從新發布的 1.0.0.M6 版本開始,Bundlor 現在支援 OSGi Blueprint 服務檔案。

與對 Spring-DM 上下文的支援一樣,Bundlor 會掃描預設位置(OSGI-INF/blueprint/*.xml)和使用自定義Bundle-Blueprint清單頭指定的位置中的 Blueprint 服務配置檔案。當找到這些檔案時,它們會掃描類和介面名稱,並將這些型別的包新增到 Bundlor 建立的 OSGi 清單中。

有關 Bundlor 的資訊和下載此最新里程碑,請訪問 Bundlor 專案頁面……

Slices 選單欄截圖

工程 | 2009年8月7日 | ...

我很高興宣佈 SpringSource Slices 的新截圖。此截圖演示了menu-bar示例應用程式的建立過程。它展示了主機如何使用一組切片動態填充選單欄而無需重新啟動,並且可以完全解耦,無需確切知道選單欄中可能有哪些專案。此外,這些切片只提供其特定內容,幷包含來自主機 bundle 的格式和其他視窗內容。

Slice 選單欄 (5:19)

原始碼

Git 遷移

工程 | 2009年7月15日 | ...

你們中的一些人可能已經注意到,在最近的帖子中,dm Server 團隊一直在引用 Git 倉庫 URL。該團隊一直在遷移其所有原始碼,我很高興地宣佈此遷移已完成。以下列表包含由 dm Server 團隊管理的程式碼的 Git URL。如果您之前在 SVN 中引用了等效的倉庫,請轉而克隆這些新倉庫。

此公告僅涵蓋由 dm Server 團隊管理的程式碼,而不包括 Spring 組合的全部。其他專案將以自己的速度進行轉換,並且 Subversion……

Maven PAR 外掛 1.0.0.M1

工程 | 2009 年 6 月 24 日 | ...

在 SpringSource dm Server(當時的應用程式平臺)推出後不久,Thorsten Maus 建立了一個 Maven 外掛用於建立 PAR 檔案。這是一項很棒的社群貢獻,我們甚至在 dm Server 1.0.x 的 入門指南 中使用了它。

隨著 dm Server 2.0 里程碑的推進,我們一直在為 PAR 檔案新增新功能。最有趣的功能是現在 PAR 檔案不僅可以包含 JAR 檔案。隨著 OSGi RFC 66 的引入,dm Server 棄用了 Web Modules,轉而使用帶有.war

OSGi Test Stubs 1.0.0.M1

工程 | 2009年6月23日 | ...

我很高興地宣佈 SpringSource OSGi Test Stubs 的 1.0.0.M1 版本釋出。這些存根提供了一種在不需要完整 OSGi 容器的情況下對複雜 OSGi 框架互動進行單元測試的方法。

問題

隨著 dm Server 團隊的開發,我們發現對我們來說最大的測試問題領域之一是BundleActivator。我們的BundleActivators做了很多將服務釋出到服務登錄檔以及使用ServiceTrackers 消費服務的工作。這些型別的任務涉及對BundleContexts、Bundles、ServiceRegistrations 和ServiceReferences 的許多交織呼叫。最初,這些啟用器足夠簡單,沒有對它們進行太多單元測試,我們依賴整合測試來捕獲引入的任何錯誤。然而,隨著時間的推移,啟用器變得越來越複雜,單元測試成為一個更緊迫的需求。我們開始使用 EasyMock 進行這些測試,但發現它們非常複雜、難以維護,最重要的是難以理解。
@Test
public void startAndStop() throws Exception {
    BundleActivator bundleActivator = new DumpBundleActivator();
    BundleContext context = createMock(BundleContext.class);
    Filter filter = createMock(Filter.class);
    
    String filterString = "(objectClass=" + DumpContributor.class.getName() + ")";
    
    expect(context.createFilter(filterString)).andReturn(filter);
    context…

透過 JMX 訪問 dm Server 倉庫內容

工程 | 2009年6月22日 | ...

dm Server 2.0.0.M1 版本中,我們增加了對共享倉庫的支援。作為此新功能的一個後續,我們增加了透過 JMX 瀏覽這些倉庫的支援。

現在,使用 JMX 客戶端連線到正在執行的 dm Server 例項會顯示一個 Repository 組。在此組下,每個已配置的倉庫(鏈式倉庫除外)都有一個 bean,它返回其中包含的所有工件的概要。該 bean 還公開了一個方法,用於根據給定 bean 的型別、名稱和版本返回完整的詳細 ArtifactDescriptor。

JMX Repository Browsing

顯然,像 JConsole 這樣的工具主要用於顯示少量有針對性的資料。對於更大的資料集,AMS 團隊目前正在開發一種更易於檢視的視覺化工具。

使用 OSGi 配置檔案與 Bundlor

工程 | 2009年5月18日 | ...

當管理和轉換 SpringSource Enterprise Bundle Repository 中包含的許多 bundle 時,記住哪些包被引導委託、從系統 bundle 匯出或從系統中的其他 bundle 匯出變得非常困難。此資訊很重要,因為您可能不想匯入被引導委託的包,您可能希望匯入“0”處的系統 bundle 包,並且您希望為所有其他包定義自定義匯入。記住哪些包屬於這些類別中的每一個最終會有點容易出錯,並且定義模板……

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有