2017-03-23 7 views
2

コマンドを実行する実行可能なbashファイルを作成します。 node app.js - 目的はノードが既にインストールされているローカルマシン上で開くことができる実行可能ファイルを持つことです実行可能ファイルはプロジェクトディレクトリ内にあります(これはexpress.jsアプリケーションです)。自己実行可能なnode.jsサーバーの作成

私はMacでそれをやろうとしていますが、.commandファイルを作成し、実行可能にしてコマンドを追加しました。 問題は、最後のコマンドの後に端末が自動的にexit;を追加するように見えるので、プロセスはすぐに終了します。 Windowsマシンでもやりたいです。

実行可能ファイルにアプリケーション全体が必要なわけではありません。ターミナルを開いて手作業で単純なコマンドを書く代わりに、ファイルをダブルクリックするオプションだけです。

どのようにこれを達成するためのアイデアですか?

+0

代わりに 'nohup node app.js&'コマンドを試してください。しかし、コンソール出力がデバッグ目的のために書かれたnohupファイルを作成します。私はそのファイルを作成せずに行う方法を知りません^^(おそらくnohupフラグ) – Kulvar

答えて

0

私が提案ソリューションの何も働いていないか、使用するのに十分に良好であった怖い - しかし、私が使用してこの問題を解決するために管理してきました:

reldir=`dirname $0` 
cd $reldir 
npm start 

@Gregoryは解決策に最も近かった -

最初に、現在のディレクトリパスを見つけてそれに行きます。 next - コマンドnode app.jsとは異なり、npm startはプロセスの終了後に実行されているように見えます。

2

foreverこれを行う必要があります。

npm i -g forever

をまたにコマンドを変更します:

ノードに追加で

、永遠に、インストールプロセスが閉じた後

forever app.js

サーバーは、継続的に実行する必要があります。

サーバーを停止するには、このコマンドを使用して、別の.commandファイルを使用することができます。

forever stopall

-1

をあなたは.BATファイルとしてnode server.jsを保存奨めしますが、最後の行にpauseを追加する必要があります。これにより、コマンドプロンプトが終了しなくなります。

1

.commandプロジェクトフォルダを入力する必要がありますので、それがMac上で私のために働いた

cd /something/project 
node app.js 

ノードスクリプトを実行するために、ユーザーフォルダで実行されます。

私はあなたはそれ.BATようにする必要があり、それはあなたがNPM

0

hotelをご利用の場合のために良い一般的な解決策になるかもしれませんapp.js代わりにノードを起動し使用することができます

を動作するはずだと思うの窓は、 。

コマンドがhotel addに登録されると、簡単なWebインターフェイスからサーバーを起動および停止できます。あまりに

ITSは、より良いクロスプラットフォームソリューション、それ以外の実行可能ファイルを使用すると、あなたが必要があるだろう意味するので:

  • .batのWindows
  • .shのためのLinux
  • .commandため

マックのために私の好きな機能はプロキシのサポートです。例えば、私は私のノードプロジェクトmy-express-appを登録した後のような:

$ cd my-express-app 
$ hotel add "node app.js" 

私は単純にサーバを起動するhttp://my-express-app.devに私のブラウザとnagivateを開くことができます。

0

ファイル内のコマンド以下の書き込み

node app.js 

および.batの拡張子を付けて保存します。

注:app.jsを正常に実行しようとすると、エラーが発生するとシェルコマンドが停止し、端末が終了するためです。

OR

それは書くの内側に、名前runCommand.batと.BATファイルを作成します。

node app.js 
cmd /K runcommand.bat 

それを保存し、ダブルクリックで実行します。エラーが発生した場合やサーバーがクラッシュした場合は、修正しない限り再試行を続けます。それ以外は走り続けるでしょう。

必要な結果を得るには、FOREVERまたはPM2を使用してプロセスを管理します。

関連する問題