在OSX Finder中双击Node webkit包不能正常打开



根据nw.js/README.md,我创建了一个非常简单的app.nw包,带有最小的'hello world'设置。它只包含两个文件:

index . html

<!DOCTYPE html>
<html>
  <head>
    <title>Hello World!</title>
  </head>
  <body>
    <h1>Hello World!</h1>
    We are using node.js <script>document.write(process.version)</script>.
  </body>
</html>

package.json

{
  "name": "nw-demo",
  "version": "0.0.1",
  "main": "index.html"
}

像这样从控制台中运行可以正常工作:

/Applications/nwjs.app/Contents/MacOS/nwjs myapp.nw

然而,当我在Finder中双击myapp.nw时,它会打开默认的nwjs文件,而不是我的应用程序。

我正在开发一个应用程序的非技术用户谁不会打开终端。我们可以让他们下载并安装nwjs。应用程序到他们的应用程序文件夹,但我们需要他们能够下载并双击应用程序包。

我能够通过将myapp.nw包复制到nwjs副本的Resources目录中,从而使我的应用程序从Finder中双击执行。根据nwjs的打包文档,将其重命名为app.nw,但是这会将我们的自定义代码集成到非常大的nwjs中。app可分发(93.8MB)。这是一个不可接受的大小,要求我们的用户下载每次。

我怎么能使我的节点webkit包(它只包含我们特定的应用程序代码和资产)直接从OSX Finder打开?

您需要将该文件打包为可执行文件。要了解更多信息,请查看项目git的指南。

我的建议是不要手动操作。相反,使用grunt来打包文件。首先,使用yeoman和generator-node-webkit来创建一个基本的项目布局和构建脚本。

然后,使可执行文件很容易:

grunt dist-mac

最新更新