web-dev-qa-db-ja.com

「run」コマンドを実行するときにPlayが使用するデフォルトのポート(9000)を変更するにはどうすればよいですか?

プレイコンソールで「実行」コマンドを発行するときに、開発モードのプレイフレームワークで使用されるデフォルトポートを変更するにはどうすればよいですか。

これは、playframework 2.0ベータ用です。

コマンドラインまたはapplication.confでhttp.port構成パラメーターを使用しても効果がないようです。

C:\dev\prototype\activiti-preso>play run --http.port=8080
[info] Loading project definition from C:\dev\prototype\activiti-preso\project
[info] Set current project to activiti-preso (in build file:/C:/dev/prototype/activiti-preso/)


Windows, really? Ok, disabling colors.

--- (Running the application from SBT, auto-reloading is enabled) ---

[error] org.jboss.netty.channel.ChannelException: Failed to bind to: 0.0.0.0/0.0.0.0:9000
[error] Use 'last' for the full log.
202
Boris Terzic

1.xをプレイ

http.portファイルのconf/application.conf値を変更するか、コマンドラインに渡します。

play run --http.port=8080

2.xをプレイ

Play 2.xはsbtプラグインなので、次のコマンドは実際にはsbtコマンドです。任意のsbtランチャーを使用できます(例:sbtplay、またはactivator)。以下のコマンドはsbtランチャーを使用しますが、選択したsbtランチャーの代わりに使用できます。

2.xのプレイ-開発モード

ブラウザのリロードモードの場合:

sbt "run 8080"

連続リロードモードの場合:

sbt "~run 8080"

2.xのプレイ-デバッグモード

ポート8080のhttpリスナーを使用してデバッグモードで実行するには、次を実行します。

sbt -jvm-debug 9999 "run 8080"

2.xのプレイ-製品モード

製品モードで開始します。

sbt "start -Dhttp.port=8080"

Play 2.x-段階的配信

段階的な配布を作成します。

sbt stage

Play 2.0.xおよび2.1.xの場合は、target/startスクリプトを使用してください(Unixのみ):

target/start -Dhttp.port=8080

Play 2.2.xおよび2.3.xの場合は、target/universal/stage/binディレクトリで適切な起動スクリプトを使用します。

target/universal/stage/bin/[appname] -Dhttp.port=8080

WindowsでPlay 2.2.xおよび2.3.xを使用する場合:

target\universal\stage\bin\[appname].bat -Dhttp.port=8080

Play 2.x-Zip配布

Zipディストリビューションを作成するには:

sbt dist

Play 2.0.xおよび2.1.xの場合、抽出されたZipでstartスクリプト(Unixのみ)を使用します。

start -Dhttp.port=8080

Play 2.2.xの場合は、[appname]-[version]/binディレクトリで適切なスクリプトを使用します。

[appname]-[version]/bin/[appname] -Dhttp.port=8080

WindowsでPlay 2.2.xを使用する場合:

[appname]-[version]\bin\[appname].bat -Dhttp.port=8080
396
James Ward

Play 2.0-RC4

実行するplayコマンドの前後に引用符を含めることが重要です。私の場合、引用符なしでプレイはポート9000で実行されます。

play "run 8080"

あるいは、プレイコンソールから次のコマンドを実行できます(コンソールにアクセスするには「play」と入力します)。

run 8080
32
Jonathan Dixon

これが誰かを助けることを願っています。

sbt設定経由:

...
.settings(PlayKeys.playDefaultPort := 8855)
...
11
Armin

バージョン2.0.

  • プロジェクトディレクトリに移動して、playとだけ言ってください(その後は何もしません)。これにより、プレイコンソールが開きます。

  • 次に、実行808と言います。これにより、ポート8080で再生が開始されます。

これがお役に立てば幸いです。

7

配布可能なtarファイルを使用したWindows上のPlay 2.2.xの場合、配布可能なルートディレクトリに{PROJECT_NAME} _config.txtというファイルを作成し、追加しました。

-Dhttp.port=8080

{PROJECT_NAME}はプロジェクトの名前に置き換える必要があります。その後、bin \ディレクトリで通常どおり{PROJECT_NAME} .batスクリプトを開始しました。

5
Wextux

Windowsで2.2.0をプレイする

Zipディストリビューション(「dist」コマンドを使用して作成)を使用して、起動ポートを変更できる唯一の方法は、最初にJava_OPTSを設定してからアプリケーションを起動することでした。

たとえば、コマンドラインから

set Java_OPTS=-Dhttp.port=9002
bin\myapp.bat

myapp.batは、「dist」コマンドで作成されたバッチファイルです。

以下は、http.portパラメーターを常に無視し、デフォルトポート9000で開始しようとします。

bin\myapp.bat -Dhttp.port=9002

ただし、これはLinux/OSXで正常に機能し、要求されたポートで起動することに気付きました。

./bin/myapp -Dhttp.port=9002
5
Jason Bass

Play 2.3.xの場合

アクティベーター "run -Dhttp.port = 9001"

5
sumitarora

プロジェクトディレクトリの.sbtoptsでHTTPポートを設定することもできます。

-Dhttp.port=9001

そうすれば、毎回runタスクに追加することを覚えておく必要はありません。

Play 2.1.1でテスト済み。

4
lachdrache

play 2.5.xおよびPlay 2.6.xの場合

sbt "-Dhttp.port=9002"

それから

run
3
Mesut Yiğit

プレイ2.5.x用

ステップ1:control + Dを使用してnettyサーバーを停止します(実行中の場合)。

ステップ2:sbt-dist/confに移動します

ステップ3:このファイル「sbtConfig.txt」をこれで編集します

-Dhttp.port=9005

ステップ4:サーバーを起動する

ステップ5: http:// Host:9005 /

2
bobby

Windowsでは、「ru​​n 9001」というプレイが機能しない可能性があります。 play.batファイルを変更する必要があります。 チケット を参照

2
Paddy

ポート8888から実行する場合は、Playコンソールからrun 8888と入力するだけです。

play> run 8888
2
Siddhu

今日導入されたコミット(11月25日)では、runまたはstart sbtコマンドの直後にポート番号を指定できるようになりました。

例えば

play run 8080またはplay start 8080

デフォルトでポート9000を再生します

2
Olivier Refalo

Playバージョン2.5.6を使用しています。

ポートを変更するには、プロジェクトのルートフォルダーに移動し、コマンドプロンプト/ターミナルでactivator "run 8008"を押します。

以上です。

1
Swapnil Kadu

WindowsでのPlay 2.2.1は、PLAY_OPTS環境変数をサポートしています。 Playのplay.batファイルには次の行が含まれています。

Java -Dsbt.ivy.home="%~dp0repository" -Dplay.home="%~dp0framework" -Dsbt.boot.properties="%fp%framework/sbt/play.boot.properties" %PLAY_OPTS% -jar "%~dp0framework\sbt\sbt-launch.jar" %*

ポート9002で実行するには

set PLAY_OPTS=-Dhttp.port=9002
play run
1
IanRae

2.3.7 Playフレームワークでテスト済み。うまくいく。

./{application}/bin/{executable} -Dhttp.port=5000
1
Venkatesh

これは私がしました。 Sudoが必要です。

$ Sudo play debug -Dhttp.port=80
...
[MyPlayApp] $ run

編集:Sudoを使用しているため問題が発生しましたので注意してください。最後に、プロジェクトをクリーンアップしましたが、そのトリックはもう使用していません。

1
Ferran Maylinch

Avtivatorからアプリケーションポートを変更することはできませんが、コマンドラインアクティベーター "〜run 8080"から変更することはできます

しかし、アクティベーターから詩人9000で実行するには、このポートを使用しているアプリケーションを停止する必要があります。このアプリケーションを使用してこれを見つけ、プロセスを終了できます https://technet.Microsoft.com/en-in/sysinternals/bb897437.aspx

この後、実行でき、成功します。

0
Avinav Mishra

Windowsでは、次のようにstart.batファイルを使用します。

Java -Dhttp.port=9001 -DapplyEvolutions.default=true -cp "./lib/*;" play.core.server.NettyServer "."

-DapplyEvolutions.default = trueは、確認を求めずに進化を自動的に適用するよう進化に指示します。もちろん、本番環境では注意して使用してください...

0
opensas

build.sbtに次の行を追加するだけです

PlayKeys.devSettings := Seq("play.server.http.port" -> "8080")

0
Nitin Aggarwal