【发布时间】:2018-12-10 04:41:42
【问题描述】:
我知道我的标题听起来很疯狂,因为现在流行的做法是使用 Electron 或 nw.js 之类的东西用于使用 Web 堆栈技术编写的桌面应用程序,但这就是我搜索 alternative desktop web runtime solutions 的原因:
- 我需要最大限度地减少对行为相同的桌面应用程序和 Web 应用程序的维护,理想情况是尽可能将代码整合到一个存储库中。
- 但是桌面应用程序不能使用 chromium-backed Electron 或 nw.js 运行,因为它绝对必须在 Centos 6 上运行,这两者都没有得到官方支持(我已经足够了 beaten my head against the wall尝试)。
因此,为了最大限度地减少代码路径并最大限度地提高兼容性,我的选择似乎是:
- Centos 6 维护更新 EOL 等待 2.5 年(希望能强制客户迁移)
- 放弃并处理将 Java GUI 和 Web 应用程序完全作为单独的代码进行维护。
- 将我的 Web 服务器重新用于本地桌面执行,以便它提供相同的 HTML/CSS/javascript,但可以在本地安装的任何浏览器中访问 localhost。
- 使用 JavaFX 并在 webview GUI 元素中重用(至少部分?)我的 javascript/css 代码。
当遗憾的是 Electron/nw.js 不可行时,是否有其他人试图弥合这一差距以整合桌面应用程序和 Web 应用程序?还是我正在寻找的简化根本不存在?
【问题讨论】:
-
你能在你的 Centos 机器上的 Docker 容器中运行 Electron 吗?这可能是您可能的跨平台解决方案。也许这会有所帮助:stackoverflow.com/questions/39930223/…
-
感谢@Matt Morgan。虽然我没有给它相当公平的尝试,但我的理解是 docker 不再支持 centos 6。我想我可以使用旧版本的 docker,但是你认为那个旧版本能够支持 Electron 吗?
-
这是一个公平的问题。我不知道答案,但也许一点点挖掘和实验会给你答案。这听起来肯定比维护两个不同的实现要好。
-
我很快就对这个想法产生了兴趣,但我唯一的其他保留是客户会厌倦弄清楚如何在他们的机器上安装 docker。有没有一种简化的方法,也许是通过分发docker binaries?
-
我将创建一个可以从浏览器中查看的 nodejs 应用程序。那时它仍然可以访问系统资源。
标签: reactjs javafx electron node-webkit nwjs