無處不在顯示絕對時間戳,它們會在一小時後移位。
例如顛覆投票日誌,建立歷史。jenkins中的時間戳無效
似乎是應用了DST,但它在俄羅斯取消了。
客戶機上的時區沒問題。時區jenkins服務器上沒問題。服務器上的date
顯示適當的時間。
Jenkins-Manage Jenkins-System info-system屬性顯示正確的user.timezone。
相對時間戳計算得很好(類似31 min ago
),因爲它應該。
我該如何糾正這種不正確的行爲?
無處不在顯示絕對時間戳,它們會在一小時後移位。
例如顛覆投票日誌,建立歷史。jenkins中的時間戳無效
似乎是應用了DST,但它在俄羅斯取消了。
客戶機上的時區沒問題。時區jenkins服務器上沒問題。服務器上的date
顯示適當的時間。
Jenkins-Manage Jenkins-System info-system屬性顯示正確的user.timezone。
相對時間戳計算得很好(類似31 min ago
),因爲它應該。
我該如何糾正這種不正確的行爲?
問題已解決。 原因是俄羅斯最近的時區變化(DST被取消)。儘管這是半年前,但我的java jre並不知道這件事。時區根本不自動。
我從https://www.ibm.com/developerworks/java/jdk/dst/jtzu.html取得實用工具,並在我的java安裝中替換了相關的javazi文件。詹金斯服務器是無頭的,所以我沒有使用這個工具本身。只是用歸檔文件替換了/ usr/lib/jvm // jre/lib/zi中的一些文件。
重新啓動詹金斯時間戳後變得良好。
看起來像一個錯誤。這是在Java應用程序中的a similar bug。作爲一種解決方法,請啓動Jenkins,並在一個小時內離開時區。
這個問題也可以通過在Java的tzdata文件這個陌生的Ubuntu/Debian錯誤觸發:
https://bugs.launchpad.net/ubuntu/+source/tzdata/+bug/1052613
重新安裝的tzdata-java包將解決這個問題。