プレイコンソールで「実行」コマンドを発行するときに、開発モードのプレイフレームワークで使用されるデフォルトポートを変更するにはどうすればよいですか。
これは、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.
http.port
ファイルのconf/application.conf
値を変更するか、コマンドラインに渡します。
play run --http.port=8080
Play 2.xはsbtプラグインなので、次のコマンドは実際にはsbtコマンドです。任意のsbtランチャーを使用できます(例:
sbt
、play
、またはactivator
)。以下のコマンドはsbt
ランチャーを使用しますが、選択したsbtランチャーの代わりに使用できます。
ブラウザのリロードモードの場合:
sbt "run 8080"
連続リロードモードの場合:
sbt "~run 8080"
ポート8080
のhttpリスナーを使用してデバッグモードで実行するには、次を実行します。
sbt -jvm-debug 9999 "run 8080"
製品モードで開始します。
sbt "start -Dhttp.port=8080"
段階的な配布を作成します。
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
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
Play 2.0-RC4
実行するplayコマンドの前後に引用符を含めることが重要です。私の場合、引用符なしでプレイはポート9000で実行されます。
play "run 8080"
あるいは、プレイコンソールから次のコマンドを実行できます(コンソールにアクセスするには「play」と入力します)。
run 8080
これが誰かを助けることを願っています。
sbt設定経由:
...
.settings(PlayKeys.playDefaultPort := 8855)
...
バージョン2.0.:
プロジェクトディレクトリに移動して、playとだけ言ってください(その後は何もしません)。これにより、プレイコンソールが開きます。
次に、実行808と言います。これにより、ポート8080で再生が開始されます。
これがお役に立てば幸いです。
配布可能なtarファイルを使用したWindows上のPlay 2.2.xの場合、配布可能なルートディレクトリに{PROJECT_NAME} _config.txtというファイルを作成し、追加しました。
-Dhttp.port=8080
{PROJECT_NAME}はプロジェクトの名前に置き換える必要があります。その後、bin \ディレクトリで通常どおり{PROJECT_NAME} .batスクリプトを開始しました。
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
Play 2.3.xの場合
アクティベーター "run -Dhttp.port = 9001"
プロジェクトディレクトリの.sbtopts
でHTTPポートを設定することもできます。
-Dhttp.port=9001
そうすれば、毎回run
タスクに追加することを覚えておく必要はありません。
Play 2.1.1でテスト済み。
play 2.5.xおよびPlay 2.6.xの場合
sbt "-Dhttp.port=9002"
それから
run
プレイ2.5.x用
ステップ1:control + Dを使用してnettyサーバーを停止します(実行中の場合)。
ステップ2:sbt-dist/confに移動します
ステップ3:このファイル「sbtConfig.txt」をこれで編集します
-Dhttp.port=9005
ステップ4:サーバーを起動する
ステップ5: http:// Host:9005 /
Windowsでは、「run 9001」というプレイが機能しない可能性があります。 play.batファイルを変更する必要があります。 チケット を参照
ポート8888から実行する場合は、Playコンソールからrun 8888と入力するだけです。
play> run 8888
今日導入されたコミット(11月25日)では、run
またはstart
sbtコマンドの直後にポート番号を指定できるようになりました。
例えば
play run 8080
またはplay start 8080
デフォルトでポート9000を再生します
Playバージョン2.5.6を使用しています。
ポートを変更するには、プロジェクトのルートフォルダーに移動し、コマンドプロンプト/ターミナルでactivator "run 8008"
を押します。
以上です。
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
2.3.7 Playフレームワークでテスト済み。うまくいく。
./{application}/bin/{executable} -Dhttp.port=5000
これは私がしました。 Sudo
が必要です。
$ Sudo play debug -Dhttp.port=80
...
[MyPlayApp] $ run
編集:Sudo
を使用しているため問題が発生しましたので注意してください。最後に、プロジェクトをクリーンアップしましたが、そのトリックはもう使用していません。
Avtivatorからアプリケーションポートを変更することはできませんが、コマンドラインアクティベーター "〜run 8080"から変更することはできます
しかし、アクティベーターから詩人9000で実行するには、このポートを使用しているアプリケーションを停止する必要があります。このアプリケーションを使用してこれを見つけ、プロセスを終了できます https://technet.Microsoft.com/en-in/sysinternals/bb897437.aspx
この後、実行でき、成功します。
Windowsでは、次のようにstart.batファイルを使用します。
Java -Dhttp.port=9001 -DapplyEvolutions.default=true -cp "./lib/*;" play.core.server.NettyServer "."
-DapplyEvolutions.default = trueは、確認を求めずに進化を自動的に適用するよう進化に指示します。もちろん、本番環境では注意して使用してください...
build.sbt
に次の行を追加するだけです
PlayKeys.devSettings := Seq("play.server.http.port" -> "8080")