当在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.

当前回答

我们不能从激活器更改应用程序端口,但可以从命令行激活器“~run 8080”更改。

但是要从激活器上运行poet 9000,我们需要停止正在使用该端口的应用程序。我们可以使用this应用程序来查找并结束该过程https://technet.microsoft.com/en-in/sysinternals/bb897437.aspx

在此之后,我们可以运行,它将成功。

其他回答

随着今天(11月25日)引入的提交,您现在可以在run或start sbt命令之后指定端口号。

例如

播放运行8080或播放开始8080

Play默认端口为9000

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.5.x

步骤1:使用control + D停止netty服务器(如果它正在运行)

步骤2:进入sbt-dist/conf目录

步骤3:编辑这个文件“sbtConfig.txt”

-Dhttp.port=9005

步骤4:启动服务器

第五步:http://host:9005/

玩2.0 rc4

在要运行的play命令周围包含引号是很重要的。在我的情况下,没有引号发挥仍然运行在端口9000。

play "run 8080"

或者,您可以从播放控制台运行以下命令(键入'play'以进入控制台)

run 8080

Play 2.5。Play 2.6.x

sbt "-Dhttp.port=9002"

然后

run