2016-07-19 4 views
0

私はしばらく前に始めたフレキシブルなプロジェクトに戻ります。npm run devを使用すると、2回起動しているようでエラーを投げています。それは以前から働いていましたが、このエラーの原因となっている設定は何ですか?標準的な融通性のある設定では、ポート3000上に1つと3001に1つの2つのWebサーバーが稼働しているはずですか?fluxible run devが2回発射していますが、webpackとnodemonでdevスタートスクリプトをどのように設定すればよいですか?

> node webpack-dev-server.js & PORT=3001 nodemon start.js -e js,jsx 

[nodemon] 1.8.1 
[nodemon] to restart at any time, enter `rs` 
[nodemon] watching: *.* 
[nodemon] starting `node start.js` 
Webpack Dev Server listening on port 3000 
[nodemon] 1.8.1 
[nodemon] to restart at any time, enter `rs` 
[nodemon] watching: *.* 
[nodemon] starting `node start.js` 
using redis session 
Application listening on port 3001 
events.js:141 
     throw er; // Unhandled 'error' event 
    ^

Error: listen EADDRINUSE :::3001 

私はwebpack-dev-server.jsでもstart.jsも呼び出していることに気付きました。

var webpack = require('webpack'); 
var WebpackDevServer = require('webpack-dev-server'); 
var config = require('./webpack.config'); 
var shell = require('shelljs'); 

new WebpackDevServer(webpack(config), { 
    publicPath: config.output.publicPath, 
    hot: true, 
    historyApiFallback: true, 
    //quiet: true, 
    proxy: { 
     '*': { target: 'http://localhost:3001' } 
    } 
}).listen(3000, function() { 
    shell.env.PORT = shell.env.PORT || 3001; 
    shell.exec('"./node_modules/.bin/nodemon" start.js -e js,jsx', function() {}); 
    console.log('Webpack Dev Server listening on port 3000'); 
}); 

多分、start.jsへのshell.exec呼び出しは冗長ですか?

答えて

0

あなたの直感は正しいと思います。このコマンドを実行してみてください:

node webpack-dev-server.js

さ起こっていただきました、ノードプログラム(WebPACKの-DEV-server.js)はポート3000上のWebPACK-devのサーバーを起動し、ポート3001でnodemonサービスを開始ターミナルで実行しているコマンドはアンパサンドを使用しているため、第3のサーバも同時に起動しています。このサーバーはポート3001でも実行されています。

エラーが発生した原因は、並列プロセスですでに使用されているポートが原因であると考えられます。

関連する問題