使用 Angular 构建 Java 桌面应用
本文介绍如何构建一个跨平台的 Java 桌面应用,在原生 Swing 窗口中集成现代化的 Angular Web 界面。
前置条件
- Git
- Java 17 或更高版本
- Node.js 22.0+
- npm 9+
- 有效的 JxBrowser 许可证(评估版或商业版)
项目设置
示例应用程序的代码存储在基于 Gradle 的 GitHub 仓库中。
获取代码
git clone https://github.com/TeamDev-IP/JxBrowser-Gallery.git
cd JxBrowser-Gallery/desktop-angular-dashboard
添加许可证
需要设置许可证密钥才能运行本教程。
项目架构
桌面应用由两个主要部分组成:
- Java 后端:基于 Swing 的应用程序,用于托管浏览器窗口并提供数据服务
- Angular 前端:提供用户界面并与 Java 后端通信的 Web 应用程序
项目结构
desktop-angular-dashboard/
├── build.gradle.kts
├── src/main/
│ ├── java/.../angular/
│ └── resources/
│ └── web/
└── web-app/
├── package.json
└── src/app/
创建应用窗口
主窗口使用 Java Swing 的 JFrame 实现。在窗口内嵌入 JxBrowser 的 BrowserView 来渲染 Angular UI。
var engine = Engine.newInstance(HARDWARE_ACCELERATED);
var engine.newBrowser();
SwingUtilities.invokeLater(() -> {
BrowserView.newInstance(browser);
();
frame.addWindowListener( () {
{
engine.close();
}
});
frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
frame.add(view, BorderLayout.CENTER);
frame.setSize(, );
frame.setLocationRelativeTo();
frame.setVisible();
});


