panic: time: missing Location in call to Time.In
发布时间:2020-12-16 19:16:26 所属栏目:大数据 来源:网络整理
导读:前提 1、docker 空镜像(或类似环境) 2、Go 应用中 使用了 loc,_ := time.LoadLocation("Asia/Chongqing") 问题 $ go run ./xxxpanic: time:missing Location in call to Time.In 原因 时间的位置信息是从本地文件系统中提取的,大多数系统都支持它,但还是
前提1、docker 空镜像(或类似环境) 2、Go 应用中 使用了 问题$ go run ./xxx panic: time:missing Location in call to Time.In 原因时间的位置信息是从本地文件系统中提取的,大多数系统都支持它,但还是取决于当前系统。具体的配置存储路径: $ cd /usr/share/zoneinfo 进入该目录就可以看到各时区的配置信息 $ ls +VERSION Australia EET Factory Greenwich Jamaica Mexico Poland US posixrules Africa Brazil EST GB HST Japan NZ Portugal UTC zone.tab America CET EST5EDT GB-Eire Hongkong Kwajalein NZ-CHAT ROC Universal Antarctica CST6CDT Egypt GMT Iceland Libya Navajo ROK W-SU Arctic Canada Eire GMT+0 Indian MET PRC Singapore WET Asia Chile Etc GMT-0 Iran MST PST8PDT Turkey Zulu Atlantic Cuba Europe GMT0 Israel MST7MDT Pacific UCT iso3166.tab 但在空镜像(或类似的场景)中就不存在这些时区配置文件,程序引用时就会出现这个报错 (准确来说,出现这个问题是因为本地系统不存在 解决安装$ apk add --no-cache tzdata 安装这个包后,会在 注意,如果没有 timezone 、locatime 的配置,需要手动处理一下 最后你知道 tzdata 是什么吗?简单来讲,它是时区数据库(作为文件和模块) 这个软件包的目的是将标准时区数据库分布在 cabal 软件包中,以便它可以在所有平台上统一用于 Haskell 程序 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |