Auto Deployer如何处理日期时间?

时间:2013-05-28 22:50:06

标签: tomcat timezone liferay war web-deployment

我的服务器位于与开发计算机不同的时区。

WAR文件无法包含时区信息。

那么自动部署者如何决定要复制什么以及不复制什么?

我在这个主题上有很多错误。有时我会收到一条消息,说明将来文件会被修改。其他时候我的上传没有激活或文件没有被复制。

我正在放置一个WAR来部署带有SSH / SCP的文件夹(蚂蚁SCP任务)。

1 个答案:

答案 0 :(得分:1)

自动部署程序基本上无条件地部署所有内容。

如果您通过低带宽连接复制应用程序,它可能会在WAR文件完全到达之前启动,从而在日志中生成大量错误。

我偶尔会看到有未来修改日期的文件消息,到目前为止,我记不起任何特定的问题了。您可能希望使用整个服务器的时区声明,并尝试设置硬件时钟与服务器所在时区的变体。对于构建服务器也是如此 - 您可能希望根据UTC为文件添加时间戳,本地时区或服务器(已配置)时区。

请注意,操作系统可能有一些设置,而Java可能会采用不同的设置,因此会发生冲突。你是对的:文件和目录的时间戳是纯粹的,而不是时区信息。

万一你的时区&时间戳变化导致Liferay或tomcat对时间戳的解释不正确的一些见解,您可能想要提供有关如何重现的信息的问题。我假设这需要很多细节,以便在其他方面可重复。时间戳问题可能难以重现“UTC的这一面”与“UTC的另一面” - 例如UTC时区的西部和东部,所以请尽可能多地提供信息:

  • 您的构建服务器是如何配置的
  • 您的部署服务器是如何配置的
  • WAR文件中包含的文件的时间戳是什么,WAR文件本身的时间戳是什么
  • 启动服务器时,日志文件的时间戳是什么
  • 在服务器日志中记录的时间是多少?它是否与文件的时间戳匹配?
  • 您在UTC的哪一方?