相关疑难解决方法(0)

在Play Framework 2应用程序中检索端口号

问题是:如何检索播放正在侦听的端口号,无论它是如何定义的(配置,命令行参数,或根本没有).

此答案使用Play Framework检索应用程序中的端口号必须是Play v1,因为该代码无法编译.

在Play 2 Java中有:

Integer port = Play.application().configuration().getInt("http.port");
Run Code Online (Sandbox Code Playgroud)

这不会返回实际的端口号,至少在所有情况下都不会.如果Play运行如下:

run 80 -Dhttp.address=example.com
Run Code Online (Sandbox Code Playgroud)

然后它返回null.

如果Play运行为

run -Dhttp.port 80 -Dhttp.address=example.com
Run Code Online (Sandbox Code Playgroud)

然后在默认端口(9000)上开始播放.

正如biesior指出的那样,两次提到港口是有效的:

play -Dhttp.port=80 "run 80"
Run Code Online (Sandbox Code Playgroud)

这当然不是最佳的,因为一个是Play实际使用的,另一个是它报告的内容.

但它会回答我关于开发模式的问题.但是,正如文档所说,Play永远不应该使用runprod 运行.那么start命令的等价物是什么,没有更好,更安全的方法吗?(我对Java版本很感兴趣,但其他人也可能想了解Scala.)

playframework-2.0

7
推荐指数
1
解决办法
3023
查看次数

标签 统计

playframework-2.0 ×1