Gitlab上的Java字符编码差异

时间:2019-06-25 10:57:21

标签: java character-encoding localization gitlab locale

我看到的行为是我的代码在本地运行时产生的字符不同于在Gitlab登台管道中运行时触发相关测试失败的字符。具体来说,

这是我在本地环境中看到的输出: enter image description here

这是分期中的一个:

enter image description here

看起来好像登台盒上的测试以某种方式误解了$格式,并且$字符被替换为¤

这是相关的Java代码,我正在获取默认区域设置来编写消息:

return new String[] { headerLine.toString(),
                "Date: " + tx.getTransactionDate().getDate().toString() + "\nAmount: "

                        + NumberFormat.getCurrencyInstance(Locale.getDefault()).format(tx.getAmount()) + "\nAccount: "
                        + (accumulatedInputs.get(FIELD_ACTNUM) != null
                                ? accumulatedInputs.get(FIELD_ACTNUM).value
                                : accumulatedInputs.get(TransactionInquiryIntentProcessor.FIELD_REFNUM).value)
                        + "\n" + subTitleBuilder.toString() };

不确定在该暂存环境中可能出什么问题吗?

1 个答案:

答案 0 :(得分:0)

我们最终让DevOps团队在Kubernetes中明确指定了en_US语言环境,从而解决了该问题。