我想将PlayFramework中编写的java应用程序的时区设置为UTC
How to set timezone to UTC in Play Framework 2.0 for both production and tests?
我已经提到了上面提到的链接,但它提到了build.scala,因为我们在playframe工作中有build.sbt。
所以任何人都可以让我知道如何在build.sbt中为时区设置java参数。
答案 0 :(得分:7)
正如在几个帖子中说的那样(即在群组中)最依赖系统的设置是最安全的,这是最好的方法(不仅适用于Play,而且不仅适用于Java),无论如何你需要在不改变操作系统的情况下更改时区设置(即devs在其他时区工作,然后是目标应用程序)你可以通过包含JVM选项(在你引用的主题中指出)来实现,即对于Play 2.2.x:
play -Duser.timezone=GMT ~run
和2.3.x +
./activator -Duser.timezone=GMT ~run
正如dist版本的其他主题中所提到的,您需要修改生成的脚本或使用此选项调用它。
警告!在应用程序启动后(即在Global类中)以编程方式设置时区不是一个好的选择,@see this gist
TIP。当然要避免禁用,你只需在应用程序的目录中编写一个bash脚本,即run.sh
:
#!/bin/bash
./activator -Duser.timezone=GMT -Dhttp.port=12345 ~run
并使用它以开发模式运行应用程序。如果使用某些IDE来运行应用程序,请检查JVM选项的配置窗口
答案 1 :(得分:0)
或者你可以这样试试:
./activator -Duser.timezone=GMT "run 12345"
这里12345是播放应用程序的运行端口。