node-webkit上的流星排行榜应用程序

时间:2014-08-22 06:52:54

标签: node.js meteor node-webkit meteor-blaze demeteorizer

我正在努力让流星排行榜应用程序在Node-Webkit上运行。 我已将其解压缩并将其压缩为.nw文件,但是当我将其放入时。我收到错误:

  

无效的包请包中没有'package.json'   确保'package.json'在包的根目录中。

我已经阅读了各种各样的帖子,但还没有清楚。 似乎demeteorized应用程序需要重组。还需要弄清楚如何运行服务器[本地/ DDP]。

编辑:

P.S。我正在使用排行榜流星应用程序中的demeteorized文件,以便能够在node-webkit中运行它。

我想知道的是:

  1. 如何运行/初始化本地节点(demeteorized)服务器并设置端口。

  2. 如何为mongodb等设置demeteorized app的环境变量。

  3. 将用作

  4.   

    “主要”:?,
      “node-remote”:?

    用于node-webkit package.json文件。

    有人可以请一些亮点,如果可能的话,我们将非常感谢你的一个例子。

    先谢谢。

    Praney:)

    更新

    经过修改后,我添加了“main”:“index.html”并将index.html文件添加到demeteorized应用程序的根目录中。这个文件只是在浏览器中加载main.js文件:

    <!DOCTYPE html>
    <html>
      <head>
        <title>Leaderboards</title>
      </head>
      <body>
      </body>
      <script src="main.js" type="text/javascript"></script>
    </html>
    

    现在我收到了这个错误:

      

    “未捕获的ReferenceError:未定义__dirname”,来源:   文件:///Users/Praney/projects/webkit/nw-sample-apps/leaderboards/main.js(2)

    main.js

    process.argv.splice(2, 0, 'program.json');
    process.chdir(require('path').join(__dirname, 'programs', 'server'));
    require('./programs/server/boot.js');
    

1 个答案:

答案 0 :(得分:0)

这并不是指如何使用demeteorizer ..完全/种类。

您可以使用已部署服务器上的输出捆绑包作为流星应用程序运行,而不是将其放在现有的流星应用程序中。

你从中得到的package.json与meteor-npm使用的那个略有不同。

当您完成流星应用程序后,您将使用demeteorizer创建一个可以在您的服务器上运行的简单包。如果您上传并解压缩它:

  1. 您可以通过cding到捆绑包并运行npm install
  2. 来安装npm模块
  3. 您可以正常运行该应用,如文档中所述。
  4. demeteorizer的整个目的是为了点击你的应用程序,你不需要在你创建的平台上使用它,因为所有的npm模块都已经工作了。它解决的问题通常是交叉拱,例如,如果你在OS X上制作应用程序,它使用二进制npm模块,服务器使用Ubuntu(不是os x)

    我认为node-webkit也可以这样做,你需要使用demeteorize的根目录(与你的app分开)。你可以看到已经有一个package.json,也许你设置它使用的根目录是你的meteor应用程序的根目录,而不是demeteorized app的untarred输出?