【发布时间】:2012-06-15 17:19:44
【问题描述】:
我想为我们的开发人员用来管理他们的开发环境的一系列终端命令构建一个界面。我想尝试在 Node.js 中构建它。
现在,我想我可以使用 Express.js 等将其创建为 HTML5/CSS 3/JavaScript 应用程序...然后想将其打包为原生 OS X 应用程序。意思是,一个我可以发送给他们的应用程序,他们双击并运行,但是要么启动 Chrome 浏览器并导航到 localhost:port 服务器,该服务器命中脚本,要么只是启动服务器并指示用户转到网址。无论哪种方式都可以。
我这样做是因为我需要访问本地系统才能配置许多东西并与任意数量的运行(无头虚拟机)交互。所以我不能简单地从服务器提供这个服务并让他们访问网站。
有什么想法吗?
【问题讨论】:
-
这真的必须是 .app 包吗?如果没有,创建一个执行所有启动内容的 shell 脚本可能会更简单,只需调用该 MyApp.command,并将其与本地构建的节点和源文件一起打包到 zipfile 或 dmg 或其他任何内容中。如果它确实需要是 .app,最简单的解决方案就是直接启动 JS 脚本,因此您必须编写 js 代码来为用户启动浏览器(并不难)。如果它需要是一个 .app 并且你不能修改 JS,那么你需要创建一个自定义的 .app 包装器。那么,你想要哪个?
-
PS,(还)没有等效于 py2app 等的 node.js,这将使中间解决方案非常容易。据我了解,appjs.org 是目前最有前途的选择,但当前版本无法在 Mac 上运行……所以即使你使用理论上的“简单” 方式。
-
PPS,另请参阅groups.google.com/group/nodejs/browse_thread/thread/…(尽管这更多是关于将 WebKit GUI 捆绑到应用程序中,而不是启动用户的默认浏览器)。
-
有人知道这方面的进展吗?看起来 appjs 已被弃用。
标签: javascript node.js macos native packaging