2

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

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

那么自动部署器是如何决定复制什么和不复制什么的呢?

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

我正在放置一个 WAR 以使用 SSH/SCP(ant SCP 任务)部署文件夹。

4

1 回答 1

1

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

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

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

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

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

  • 你的构建服务器是如何配置的
  • 您的部署服务器是如何配置的
  • WAR文件中包含的文件的时间戳是什么,WAR文件本身的时间戳
  • 启动服务器时,日志文件的时间戳是多少
  • 服务器日志中记录的时间是多少?它与文件的时间戳匹配吗?
  • 你在UTC的哪一边?
于 2013-06-04T14:20:05.820 回答