我try 将LocalDateTime转换为当前使用的语言,如下面的答案所示:https://stackoverflow.com/a/51843932
在Eclipse中运行该程序的效果与预期一致,但当它与maven和jlink一起部署时,它会返回到英语.
我想我缺少一个需要的模块?它是一个JDK17模块化应用程序.
我试过:
Locale loc = new Locale("de", "DE");
Locale.setDefault(loc);
lblDateTime.setText(LocalDateTime.now()
.format(DateTimeFormatter.ofPattern("EEEE, dd. MMMM yyyy - HH:mm:ss");
lblDateTime.setText(LocalDateTime.now()
.format(DateTimeFormatter.ofPattern("EEEE, dd. MMMM yyyy - HH:mm:ss", Locale.GERMAN);
lblDateTime.setText(LocalDateTime.now()
.format(DateTimeFormatter.ofPattern("EEEE, dd. MMMM yyyy - HH:mm:ss").localizedBy(Locale.GERMAN);
Result in Eclipse in all 3 cases:
模块信息:
module [name] {
[...]
requires transitive javafx.controls;
requires javafx.fxml;
requires transitive javafx.graphics;
requires org.apache.logging.log4j.core;
requires javafx.base;
requires org.controlsfx.controls;
requires java.base;
requires java.desktop;
}
更新1:
更新2: