容器化 Maximo Manage 的 BIRT 开发环境
克里斯·布朗
July 14, 2025


如 Maximo 管理器 演变为容器原生平台,其许多支持工具和开发工作流程仍与传统技术息息相关。BIRT(商业智能和报告工具)就是这样一种工具,它仍然是Maximo报告功能的核心部分,但它带来了一些沉重的负担。
在这篇文章中,我将探讨在现代环境中使用BIRT所面临的挑战,以及容器化BIRT开发环境如何解决的不仅仅是一个挑战,而是许多挑战。
Maximo Manage 8.x 和 9.x(以及之前的 7.6.x)依赖于不同版本的 Birt,其中一些版本已有七年以上的历史了。例如,Maximo Manage 8.x 到 9.0 要求的 BIRT 4.8 依赖于 Java 1.8,甲骨文于 2019 年 1 月停止支持 Java 1.8。
这会带来几个问题:
为了解决这些问题,我使用无根容器引擎 Podman 对 BIRT 开发环境进行了容器化。这种方法带来了许多好处:
由于 Maximo Manage 本身现在在容器中运行,因此将 BIRT 开发环境引入同一个生态系统是完全合理的。通过容器化 BIRT:
也许最重要的是,你的开发工作流程可以适应未来的发展。
容器化 BIRT 开发环境的另一个主要优势是它可以增强团队之间的协作。通过使用共享的、受版本控制的容器镜像,团队可以确保所有人(从开发人员到测试人员再到 DevOps 工程师)都在稳定的环境中工作。这减少了沟通不畅,简化了故障排除,并使跨多个项目或客户扩展开发工作变得更加容易。无论您是要招募新团队成员还是跨时区协作,容器都提供了可靠且可重复的基础,使每个人保持一致。
在最近的一个项目中,我们在使用容器化版本的 BIRT 为 IBM Maximo 应用程序套件 (MAS) Manage 9.0 开发报告时遇到了一个意想不到的问题。具体而言,报告预览功能无法正常工作——这是其他开发团队以前从未遇到过的问题。
经过一番调查,我们发现根本原因与容器化 BIRT 环境捆绑在一起的库创建的报告上下文有关。尽管这些库在技术上是正确的,但它们引入了与 MAS Manage 9.0 细微的不兼容性。
解决方案涉及修改报告,手动将缺失的 Maximo 属性添加到报表上下文中。有趣的是,这个问题以前从未浮出水面,因为MAS 9的大多数报告都是根据IBM的BIRT开发指南编写的。这些指南链接到用于 BIRT 8.x 的库文件,这些文件没有同样的问题。
这种经历是一个宝贵的提醒:开发环境可能会有很大差异,这些差异可能会导致以后出现意想不到的问题。它强调了在部署环境的特定环境中验证工具和库的重要性,即使遵循官方文档也是如此。
像 BIRT 这样的传统工具不必阻碍你。通过容器化,您可以对开发环境进行现代化改造,而无需从头开始重写所有内容。这是一种实用、可扩展的解决方案,可为您的 Maximo 报告工作流程带来安全性、一致性和灵活性。
Discover everything you need to know to modernize your asset management strategy.
Inside, you’ll learn:

ActiveG, BPD Zenith, EAM Swiss, InterPro Solutions, Lexco, Peacock Engineering, Projetech, Sharptree, and ZNAPZ have united under one brand: Naviam.
You’ll be redirected to the most relevant page at Naviam.io in a few seconds — or you can
go now.