2017-04-20 53 views
0

我有一個在SAP Cloud Platform中運行的Java服務,它使用java.util.TimeZone庫進行時區轉換。但是最近我知道時區轉換規則可能會改變,例如中歐時區可能會在UTC + 01:00更改爲UTC + 02:00。我知道這可能不會發生在幾百年,但有可能。如果發生這種情況,我的服務中的數據可能是錯誤的。是否有可能以及如何更新Cloud Foundry中的JDK

Oracle有一個時區更新工具(http://www.oracle.com/technetwork/java/javase/tzupdater-readme-136440.html),它能夠用最新的時區數據更新JDK。要運行它,我必須:

  1. 停止所有正在運行的JDK/JRE實例。

  2. 運行命令「java -jar tzupdater.jar選項」作爲管理員。

我的問題是:

  1. 是否能鑄造已經考慮這樣的問題?如果是的話,我該怎麼做才能使用這個功能?

  2. 我有可能爲我的服務更新Cloud Foundry中的JDK嗎?如果是,如何?

非常感謝!

回答

1
  1. 鑄造廠能否考慮過這樣的問題?如果是的話,我該怎麼做才能使用這個功能?

以某種方式是。 Cloud Foundry通過它的Java Build Pack將使您的JVM保持最新狀態。根據您提供的鏈接中的以下聲明,這是獲取最新時區數據的首選方式。

Oracle建議您使用最新的Oracle Java SE平臺JDK或JRE更新版本作爲提供時區數據更新和其他產品改進(如安全修復程序)的首選方式。

http://www.oracle.com/technetwork/java/javase/tzupdater-readme-136440.html#introduction

所有你需要做的,以確保您的JVM熬夜最新的是定期cf pushcf restage您的應用程序。這將導致構建包運行併產生一個新的包含最新JVM的小滴。

  1. 我有可能爲我的服務更新Cloud Foundry中的JDK嗎?如果是,如何?

是的。通過構建包。 Java構建包負責安裝JVM。它會在分段時選擇最新的一個(除非另有說明)。所以要更新你的JVM,你只需要重新調整你的應用程序。

相關問題