1

この質問に関連して、すでにいくつかの質問があります。

meteorjs アプリを公式の meteor サーバーにデプロイしたいと考えています。私のアプリケーションはファイバーを使用しています。ファイバーは私のシステム (Mac OSX) 用にコンパイルされているため、流星によって ubuntu サーバーでエラーが発生します。

他の質問/回答は、公式の流星サーバー以外の場所にアプリを展開することに関連しているか、私にとってはうまくいかないため、一歩外に出ているようです.

関連する投稿のいくつかは次のとおりです。

Modulus.io で Meteor アプリのノードファイバーを再インストールしますか?

ファイバー モジュールに関連する Meteor 展開の問題

使用したい:

meteor deploy myapp.meteor.com

編集:

残念ながら、上記の私の質問は完全ではありませんでした。私はファイバーの一部である Future を使用しています。meteor にデプロイしてサーバー ログにアクセスすると、これらの警告が表示され、アプリケーションがすぐにクラッシュします。

警告 /meteor/dev_bundles/0.3.13/lib/node_modules/fibers/future.js:173

警告エラー: モジュール 'fibers/Future' が見つかりません

私のコードには次の行があります。

Future = Npm.require("fibers/future");

これは流星展開 XXX.meteor.com では不可能ですか?

2番目の編集:使用する代わりに:

Future = Npm.require("fibers/future");

私も試しました:

var path = Npm.require('path');
var fs = Npm.require('fs');
var base = path.resolve('.');
var isBundle = fs.existsSync(base + '/bundle');
var modulePath = base + (isBundle ? '/bundle/static' : '/public') + '/node_modules';
Future = Npm.require(modulePath + '/fibers/future');

この投稿で提案されているように:

meteor.com の Meteor アプリにノード モジュールをデプロイするにはどうすればよいですか?

そして、ファイバーを次のように取り付けました。

.meteor/local/build/programs/server/public/node_modules/

しかし、これを使用すると、sudo エラーなしで流星を実行すると、次のいずれかが発生します。

または、sudo で実行した場合のこのエラー: エラー: モジュール 'XXXX/.meteor/local/build/programs/server/public/node_modules/fibers/future' が見つかりません

通常、sudo ofc なしで流星を実行します。

4

3 に答える 3

1

私の問題は、別のフレームワークをロードするための npm パッケージを含めたことでした。これにより、流星によって新しい Npm が壊れました。

于 2013-09-30T13:11:14.283 に答える
0

ドキュメントに記載されているように、ファイバーをアンインストールしてサーバーに再インストールするだけです。

cd bundle/programs/server/node_modules
rm -r fibers
npm install fibers@1.0.1

meteor bundle xxx.tar.gzバンドル ディレクトリは、 ubuntu サーバーで作成したバンドルされたアプリの未展開バージョンです。

于 2013-09-28T22:12:58.940 に答える