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中以指定为文件名(不带.properties扩展名)的 PID 访问。

计划属性

计划现在可以具有用于替换的全局定义的属性。

<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 项目页面

切片菜单栏屏幕截图

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

我很高兴地宣布 SpringSource 切片的新屏幕截图。此屏幕截图介绍了menu-bar示例应用程序的创建。它展示了主机如何使用切片集合动态填充菜单栏,而无需重新启动,并且可以完全与对菜单栏中可能包含哪些项目的了解脱钩。此外,切片仅提供其特定内容,并包含来自主机捆绑包的格式和其他窗口内容。

切片菜单栏 (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 创建了一个用于创建 PAR 文件的 Maven 插件。这是一个很棒的社区贡献,我们甚至在 dm Server 1.0.x 的入门指南中使用了它。

随着 dm Server 的 2.0 里程碑的进展,我们一直在向 PAR 文件添加新功能。最有趣的功能是,现在 PAR 文件可以包含不仅仅是 JAR 文件。随着OSGi RFC 66的引入,dm Server 已弃用 Web 模块,转而使用标准 Web 容器文件,使用.war

OSGi 测试存根 1.0.0.M1

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

我很高兴地宣布 SpringSource 的 OSGi 测试存根的 1.0.0.M1 版本。这些存根提供了一种方法来单元测试复杂的 OSGi 框架交互,而无需完整的 OSGi 容器。

问题

随着 dm Server 团队的开发,我们发现对我们来说最大的测试问题领域之一在于BundleActivator。我们的BundleActivator在服务注册表中发布大量服务,并使用ServiceTracker使用服务。这些类型的任务涉及对BundleContextBundleServiceRegistrationServiceReference最初,这些激活器足够简单,以至于没有对其进行太多单元测试,我们依靠集成测试来捕获引入的任何错误。 随着时间的推移,激活器变得越来越复杂,单元测试变得越来越迫切。 我们开始使用 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 实例会显示一个存储库组。 在此组下,每个配置的存储库(链式存储库除外)都有一个 Bean,它返回其中包含的所有工件的摘要。 该 Bean 还公开了一种方法,用于根据其类型、名称和版本返回给定 Bean 的完整、详细的 ArtifactDescriptor。

JMX Repository Browsing

显然,像 JConsole 这样的工具主要用于显示少量目标数据。 对于更大的数据集,AMS 团队目前正在开发更容易阅读的可视化工具。

使用 Bundlor 与 OSGi 配置文件

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

当管理和转换SpringSource 企业 Bundle 存储库中包含的众多 Bundle 时,记住哪些包被引导委派、从系统 Bundle 导出或从系统中的其他 Bundle 导出变得非常困难。 此信息很重要,因为您可能不希望导入引导委派的包,您可能希望以“0”导入系统 Bundle 包,并且您希望为所有其他包定义自定义导入。 记住哪些包属于这些类别中的哪一个最终会容易出错,并且定义模板……

领先一步

VMware 提供培训和认证,助您快速提升。

了解更多

获取支持

Tanzu Spring 通过一个简单的订阅提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部