当在play控制台发出“run”命令时,如何更改开发模式下play框架使用的默认端口。

这是playframework 2.0测试版。

使用http。端口配置参数在命令行或在application.conf中似乎没有影响:

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.

当前回答

玩的2.倍

在Play 2中,这些都是用sbt插件实现的,所以下面的指令实际上只是sbt任务。您可以使用任何sbt运行程序(例如 在Play 2中,这些都是用sbt插件实现的,所以下面这些真的只是 sbt任务。您可以使用任何sbt运行器(例如,sbt, play或 激活)。下面使用sbt运行器,但是 你可以用它代替你选择的SBT跑步机。

玩2。x—Dev模式

浏览器重载模式:

sbt "run 8080"

连续装填模式:

sbt "~run 8080"

玩2。x -调试模式

使用http监听器在端口8080上运行调试模式,执行以下命令:

sbt -jvm-debug 9999 "run 8080"

玩2。- Prod模式

Prod模式启动:

sbt "start -Dhttp.port=8080"

玩2。x -分段分布

创建一个分阶段分发:

sbt stage

Play 2.0。X和2.1。x使用目标/启动脚本(仅适用于Unix):

target/start -Dhttp.port=8080

Play 2.2。X & 2.3。在target/universal/stage/bin目录下使用适当的启动脚本:

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

使用Play 2.2。X & 2.3。Windows操作系统:

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

玩2。x - Zip分发

要创建zip分发:

sbt dist

Play 2.0。X和2.1。在解压后的zip文件中使用启动脚本(仅适用于Unix):

start -Dhttp.port=8080

Play 2.2。X在[appname]-[version]/bin目录下使用适当的脚本:

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

使用Play 2.2。Windows操作系统:

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

玩的1.倍

修改http. conf文件。在conf/application.conf文件中输入端口值或通过命令行:

play run --http.port=8080

其他回答

玩的2.倍

在Play 2中,这些都是用sbt插件实现的,所以下面的指令实际上只是sbt任务。您可以使用任何sbt运行程序(例如 在Play 2中,这些都是用sbt插件实现的,所以下面这些真的只是 sbt任务。您可以使用任何sbt运行器(例如,sbt, play或 激活)。下面使用sbt运行器,但是 你可以用它代替你选择的SBT跑步机。

玩2。x—Dev模式

浏览器重载模式:

sbt "run 8080"

连续装填模式:

sbt "~run 8080"

玩2。x -调试模式

使用http监听器在端口8080上运行调试模式,执行以下命令:

sbt -jvm-debug 9999 "run 8080"

玩2。- Prod模式

Prod模式启动:

sbt "start -Dhttp.port=8080"

玩2。x -分段分布

创建一个分阶段分发:

sbt stage

Play 2.0。X和2.1。x使用目标/启动脚本(仅适用于Unix):

target/start -Dhttp.port=8080

Play 2.2。X & 2.3。在target/universal/stage/bin目录下使用适当的启动脚本:

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

使用Play 2.2。X & 2.3。Windows操作系统:

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

玩2。x - Zip分发

要创建zip分发:

sbt dist

Play 2.0。X和2.1。在解压后的zip文件中使用启动脚本(仅适用于Unix):

start -Dhttp.port=8080

Play 2.2。X在[appname]-[version]/bin目录下使用适当的脚本:

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

使用Play 2.2。Windows操作系统:

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

玩的1.倍

修改http. conf文件。在conf/application.conf文件中输入端口值或通过命令行:

play run --http.port=8080

版本2.0.3:

转到项目目录,只说play(在那之后什么都没有)。 这将打开播放控制台。 接下来,运行8080。这将在端口8080上开始播放。

我希望这能有所帮助。

你可以在项目根目录下的.jvmopts文件中设置其他选项:

-Dhttp.port=9100

您还可以添加其他选项,如加载不同的配置文件

-Dconfig.file=<config_file_absolute_path>

在你设置了.jvmopts文件之后,你不需要记得在命令行中添加一些参数,只需要这样做:

sbt run

在windows上,我使用这样的start.bat文件:

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

- dapplyevoludings .default=true告诉evolution自动应用evolution而不需要确认。当然,在生产环境中使用时要谨慎……

在Windows上,“运行9001”可能无法运行。你必须改变play.bat文件。看到机票