2

Meteor Leaderboard アプリを Node-Webkit で実行しようとしています。私はそれを分解して .nw ファイルに圧縮しましたが、ドロップするとエラーが発生します:

無効なパッケージ パッケージに「package.json」がありません。「package.json」がパッケージのルートにあることを確認してください。

さまざまなスレッドを読みましたが、まだ明確なものはありません。劣化したアプリを再構築する必要があるようです。また、サーバーを実行する方法を理解する必要があります [ローカル/DDP]。

編集:

PS私はリーダーボード流星アプリからdemeteorizedファイルを使用して、node-webkitで実行できるようにしています。

ここで正確に理解しようとしているのは次のとおりです。

  1. ローカル ノード (demeteorized) サーバーを実行/初期化し、ポートを設定する方法。

  2. mongodb などの demeteorized アプリの環境変数を設定する方法。

  3. として使用されるもの

「メイン」: ?、
「ノードリモート」: ?

node-webkit package.json ファイルの場合。

誰かが光を当ててください。可能であれば、例を高く評価してください。

ありがとうございます。

プラニー:)

アップデート:

少しいじってから、"main": "index.html" を追加し、demeteorized アプリのルートに index.html ファイルを追加しました。このファイルは、ブラウザに main.js ファイルをロードするだけです。

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

今、私はこのエラーが発生しています:

「Uncaught ReferenceError: __dirname is not defined」、ソース: file:///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');
4

1 に答える 1

0

これは、ディメテオライザーの使用方法ではありません..正確に/種類。

デプロイされたサーバーで出力バンドルを使用して、既存の Meteor アプリに配置するのではなく、Meteor アプリとして実行します。

そこから取得する package.json は、meteor-npm が使用するものとは少し異なります。

meteor アプリが完成したら、demeteorizer を使用して、サーバー上で実行できる簡単なバンドルを作成します。アップロードして展開した場合:

  1. バンドルにcdして実行することにより、npmモジュールをインストールしますnpm install
  2. ドキュメントに記載されているように、アプリを通常どおり実行できます。

demeteorizer の全体的な目的は、アプリを nodify することです。すべての npm モジュールが既に機能しているため、作成したプラットフォームではこれを行う必要はありません。それが解決する問題は通常、クロスアーチにあります。たとえば、OS X でアプリを作成し、バイナリ npm モジュールを使用し、サーバーが Ubuntu (os x ではない) を使用している場合などです。

node-webkit でもできると思いますが、これには demeteorize のルート ディレクトリを使用する必要があります (アプリとは別)。既に package.json が含まれていることがわかります。使用するように設定したルート ディレクトリは、流星アプリのルート ディレクトリであり、demeteorized アプリの untar されていない出力ではありませんか?

于 2014-08-22T10:42:28.717 に答える