基于 Erlang 编写的可扩展、高容错 XMPP 即时通讯服务器,面向大型企业部署。
- Star
- 3,074
- Fork
- 1,399
- 未关闭 Issue
- 67
- 最近提交
- 昨天
这是什么?
Openfire 是一款基于 XMPP(即 Jabber)协议的实时协作(RTC)服务器。XMPP 是应用最广泛的开放即时通讯协议,Openfire 让组织可以自建聊天与在线状态服务,而无需依赖托管的消息平台。
项目使用 Java 编写,是 Ignite Realtime 社区的开源项目。核心服务器位于一个 Maven 模块中,构建后会生成可运行的发行版,可通过 shell 脚本或批处理文件在不同平台上启动。管理界面支持国际化,仓库中也包含插件的构建配置,便于扩展服务器功能。
参与开发的人员可以用 Maven 构建完整项目,也可以只构建核心服务器及其依赖,以加快迭代速度。缺陷报告通过 Ignite Realtime 社区论坛提交。
核心功能
- 01实现 XMPP 协议,支持即时消息与在线状态。
- 02提供基于网页的管理界面,并支持多语言。
- 03支持插件机制,插件通过 Maven 构建。
- 04通过 shell 与批处理脚本在多个平台上启动。
适用场景
- 为企业或团队自建内部即时通讯服务器。
- 为现有应用或服务接入基于 XMPP 的消息功能。
- 学习或参与维护大型、长期演进的 Java XMPP 服务器代码。
快速上手
- 1
使用 Maven Wrapper 构建项目
./mvnw verify -pl distribution -am - 2
使用 shell 脚本启动 Openfire
./distribution/target/distribution-base/bin/openfire.sh
使用前须知
- 从源码构建需要 Java 工具链和 Maven,README 仅介绍了源码构建方式。
- 在 Windows 上需要使用单独的批处理文件启动,且无法直接在 IDE 中运行服务器。
收录于专题
标签
常见问题
- Openfire 是什么?
- 基于 Java 的 XMPP 实时协作服务器,用于即时通讯,采用 Apache 2.0 许可证。 Openfire 是一款基于 XMPP(即 Jabber)协议的实时协作(RTC)服务器。XMPP 是应用最广泛的开放即时通讯协议,Openfire 让组织可以自建聊天与在线状态服务,而无需依赖托管的消息平台。
- Openfire 可以免费使用吗?用的什么许可证?
- Openfire 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- Openfire 还在维护吗?
- 活跃维护中。Openfire 最近一次提交是在 2026年11月6日。
- Openfire 适合用来做什么?
- 为企业或团队自建内部即时通讯服务器。 为现有应用或服务接入基于 XMPP 的消息功能。 学习或参与维护大型、长期演进的 Java XMPP 服务器代码。
- Openfire 怎么安装和运行?
- 使用 Maven Wrapper 构建项目: ./mvnw verify -pl distribution -am 使用 shell 脚本启动 Openfire: ./distribution/target/distribution-base/bin/openfire.sh
- 在哪里获取 Openfire?
- 源代码和安装说明在 GitHub 上:https://github.com/igniterealtime/Openfire
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
1759+1 本周444ErlangOther更新于 前天
一款运行在浏览器中的 XMPP 即时通讯客户端,可独立使用,也可嵌入现有网站。
3305+2 本周834JavaScriptMPL-2.0维护活跃更新于 22小时前
OCTO 开源办公平台的 Go 后端,提供 REST 与 WebSocket 接口,并基于 WuKongIM 实现实时消息。
1108+7 本周175GoApache-2.0更新于 昨天
用 Go 编写的可自托管即时通讯服务端,配套 Android、iOS 与 Web 客户端,并提供 gRPC 接口。
1.4万+10 本周2092GoGPL-3.0更新于 13天前
基于 Java 的 XMPP/Jabber 即时通讯服务器,模块化且可灵活配置。
358110JavaAGPL-3.0更新于 上个月
基于 uWebSockets.js 的聊天服务器,提供区别于 XMPP 的消息协议方案,使用 Node.js、MongoDB 和 Redis。
16116JavaScriptGPL-3.0更新于 上个月