Hello,

For CI builds I like to have Maven print timestamped log messages.

With Maven 3.9.9, this works nicely:

----
mvn -Dorg.slf4j.simpleLogger.showDateTime=true 
-Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss.SSS verify
----

However, when I run this command with Maven 4.0.0-rc-2, I get an 
UnsupportedTemporalTypeException telling me that HourOfDay is an unsupported 
field:

----
Apache Maven 4.0.0-rc-2 (273314404f85ec3c089e295d8b4e0cb18c287cf5)
Maven home: /opt/local/share/java/maven4
Java version: 21.0.5, vendor: Azul Systems, Inc., runtime: 
/opt/local/Library/Java/JavaVirtualMachines/jdk-21-azul-zulu.jdk/Contents/Home
Default locale: nl_NL, platform encoding: UTF-8
OS name: "mac os x", version: "15.2", arch: "aarch64", family: "mac"
---------------------------------------------------
constituent[0]: file:/opt/local/share/java/maven4/conf/logging/
constituent[1]: file:/opt/local/share/java/maven4/lib/maven-xml-4.0.0-rc-2.jar
constituent[2]: 
file:/opt/local/share/java/maven4/lib/maven-api-metadata-4.0.0-rc-2.jar
constituent[3]: 
file:/opt/local/share/java/maven4/lib/maven-logging-4.0.0-rc-2.jar
constituent[4]: file:/opt/local/share/java/maven4/lib/maven-jline-4.0.0-rc-2.jar
constituent[5]: 
file:/opt/local/share/java/maven4/lib/maven-api-toolchain-4.0.0-rc-2.jar
constituent[6]: file:/opt/local/share/java/maven4/lib/maven-cli-4.0.0-rc-2.jar
constituent[7]: file:/opt/local/share/java/maven4/lib/maven-core-4.0.0-rc-2.jar
constituent[8]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-transport-wagon-2.0.5.jar
constituent[9]: 
file:/opt/local/share/java/maven4/lib/maven-api-plugin-4.0.0-rc-2.jar
constituent[10]: 
file:/opt/local/share/java/maven4/lib/maven-compat-4.0.0-rc-2.jar
constituent[11]: 
file:/opt/local/share/java/maven4/lib/maven-artifact-4.0.0-rc-2.jar
constituent[12]: 
file:/opt/local/share/java/maven4/lib/maven-api-settings-4.0.0-rc-2.jar
constituent[13]: 
file:/opt/local/share/java/maven4/lib/maven-api-core-4.0.0-rc-2.jar
constituent[14]: 
file:/opt/local/share/java/maven4/lib/maven-api-annotations-4.0.0-rc-2.jar
constituent[15]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-util-2.0.5.jar
constituent[16]: 
file:/opt/local/share/java/maven4/lib/maven-builder-support-4.0.0-rc-2.jar
constituent[17]: 
file:/opt/local/share/java/maven4/lib/maven-toolchain-model-4.0.0-rc-2.jar
constituent[18]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-spi-2.0.5.jar
constituent[19]: 
file:/opt/local/share/java/maven4/lib/maven-api-di-4.0.0-rc-2.jar
constituent[20]: 
file:/opt/local/share/java/maven4/lib/maven-toolchain-builder-4.0.0-rc-2.jar
constituent[21]: 
file:/opt/local/share/java/maven4/lib/maven-api-xml-4.0.0-rc-2.jar
constituent[22]: 
file:/opt/local/share/java/maven4/lib/maven-model-builder-4.0.0-rc-2.jar
constituent[23]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-transport-jdk-2.0.5.jar
constituent[24]: file:/opt/local/share/java/maven4/lib/maven-di-4.0.0-rc-2.jar
constituent[25]: 
file:/opt/local/share/java/maven4/lib/maven-repository-metadata-4.0.0-rc-2.jar
constituent[26]: 
file:/opt/local/share/java/maven4/lib/maven-settings-4.0.0-rc-2.jar
constituent[27]: 
file:/opt/local/share/java/maven4/lib/maven-xml-impl-4.0.0-alpha-9.jar
constituent[28]: 
file:/opt/local/share/java/maven4/lib/maven-api-cli-4.0.0-rc-2.jar
constituent[29]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-named-locks-2.0.5.jar
constituent[30]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-impl-2.0.5.jar
constituent[31]: 
file:/opt/local/share/java/maven4/lib/maven-api-model-4.0.0-rc-2.jar
constituent[32]: 
file:/opt/local/share/java/maven4/lib/maven-settings-builder-4.0.0-rc-2.jar
constituent[33]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-transport-apache-2.0.5.jar
constituent[34]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-transport-file-2.0.5.jar
constituent[35]: file:/opt/local/share/java/maven4/lib/maven-impl-4.0.0-rc-2.jar
constituent[36]: 
file:/opt/local/share/java/maven4/lib/maven-api-spi-4.0.0-rc-2.jar
constituent[37]: 
file:/opt/local/share/java/maven4/lib/maven-embedder-4.0.0-rc-2.jar
constituent[38]: 
file:/opt/local/share/java/maven4/lib/maven-model-4.0.0-rc-2.jar
constituent[39]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-connector-basic-2.0.5.jar
constituent[40]: 
file:/opt/local/share/java/maven4/lib/maven-plugin-api-4.0.0-rc-2.jar
constituent[41]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-provider-4.0.0-rc-2.jar
constituent[42]: 
file:/opt/local/share/java/maven4/lib/maven-resolver-api-2.0.5.jar
constituent[43]: file:/opt/local/share/java/maven4/lib/jline-native-3.28.0.jar
constituent[44]: file:/opt/local/share/java/maven4/lib/httpcore-4.4.16.jar
constituent[45]: 
file:/opt/local/share/java/maven4/lib/jline-console-ui-3.28.0.jar
constituent[46]: 
file:/opt/local/share/java/maven4/lib/plexus-component-annotations-2.1.0.jar
constituent[47]: 
file:/opt/local/share/java/maven4/lib/plexus-interactivity-api-1.3.jar
constituent[48]: 
file:/opt/local/share/java/maven4/lib/org.eclipse.sisu.plexus-0.9.0.M3.jar
constituent[49]: file:/opt/local/share/java/maven4/lib/aopalliance-1.0.jar
constituent[50]: file:/opt/local/share/java/maven4/lib/gson-2.11.0.jar
constituent[51]: file:/opt/local/share/java/maven4/lib/commons-codec-1.17.1.jar
constituent[52]: 
file:/opt/local/share/java/maven4/lib/javax.annotation-api-1.3.2.jar
constituent[53]: file:/opt/local/share/java/maven4/lib/jline-style-3.28.0.jar
constituent[54]: 
file:/opt/local/share/java/maven4/lib/plexus-interpolation-1.27.jar
constituent[55]: 
file:/opt/local/share/java/maven4/lib/jakarta.inject-api-2.0.1.jar
constituent[56]: file:/opt/local/share/java/maven4/lib/asm-9.7.1.jar
constituent[57]: file:/opt/local/share/java/maven4/lib/woodstox-core-7.1.0.jar
constituent[58]: file:/opt/local/share/java/maven4/lib/wagon-http-3.5.3.jar
constituent[59]: file:/opt/local/share/java/maven4/lib/plexus-xml-4.0.4.jar
constituent[60]: file:/opt/local/share/java/maven4/lib/jline-builtins-3.28.0.jar
constituent[61]: file:/opt/local/share/java/maven4/lib/jansi-core-3.28.0.jar
constituent[62]: file:/opt/local/share/java/maven4/lib/failureaccess-1.0.2.jar
constituent[63]: file:/opt/local/share/java/maven4/lib/guice-6.0.0-classes.jar
constituent[64]: file:/opt/local/share/java/maven4/lib/stax2-api-4.2.2.jar
constituent[65]: file:/opt/local/share/java/maven4/lib/wagon-file-3.5.3.jar
constituent[66]: 
file:/opt/local/share/java/maven4/lib/wagon-http-shared-3.5.3.jar
constituent[67]: file:/opt/local/share/java/maven4/lib/slf4j-api-2.0.16.jar
constituent[68]: 
file:/opt/local/share/java/maven4/lib/jline-terminal-jni-3.28.0.jar
constituent[69]: file:/opt/local/share/java/maven4/lib/jline-terminal-3.28.0.jar
constituent[70]: 
file:/opt/local/share/java/maven4/lib/jline-terminal-ffm-3.28.0.jar
constituent[71]: file:/opt/local/share/java/maven4/lib/jcl-over-slf4j-2.0.16.jar
constituent[72]: file:/opt/local/share/java/maven4/lib/commons-cli-1.9.0.jar
constituent[73]: file:/opt/local/share/java/maven4/lib/jline-reader-3.28.0.jar
constituent[74]: 
file:/opt/local/share/java/maven4/lib/wagon-provider-api-3.5.3.jar
constituent[75]: file:/opt/local/share/java/maven4/lib/plexus-utils-4.0.1.jar
constituent[76]: file:/opt/local/share/java/maven4/lib/guava-33.3.1-jre.jar
constituent[77]: 
file:/opt/local/share/java/maven4/lib/plexus-sec-dispatcher-4.0.3.jar
constituent[78]: file:/opt/local/share/java/maven4/lib/javax.inject-1.jar
constituent[79]: file:/opt/local/share/java/maven4/lib/httpclient-4.5.14.jar
constituent[80]: 
file:/opt/local/share/java/maven4/lib/org.eclipse.sisu.inject-0.9.0.M3-no_asm.jar
---------------------------------------------------
java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: 
HourOfDay
        at java.base/java.time.Instant.getLong(Instant.java:603)
        at 
java.base/java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:308)
        at 
java.base/java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.format(DateTimeFormatterBuilder.java:2914)
        at 
java.base/java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2529)
        at 
java.base/java.time.format.DateTimeFormatter.formatTo(DateTimeFormatter.java:1905)
        at 
java.base/java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1879)
        at 
org.apache.maven.slf4j.MavenBaseLogger.getFormattedDate(MavenBaseLogger.java:275)
        at 
org.apache.maven.slf4j.MavenBaseLogger.innerHandleNormalizedLoggingCall(MavenBaseLogger.java:386)
        at 
org.apache.maven.slf4j.MavenBaseLogger.handleNormalizedLoggingCall(MavenBaseLogger.java:375)
        at 
org.slf4j.helpers.AbstractLogger.handleArgArrayCall(AbstractLogger.java:401)
        at org.slf4j.helpers.AbstractLogger.error(AbstractLogger.java:341)
        at 
org.apache.maven.slf4j.MavenFailOnSeverityLogger.error(MavenFailOnSeverityLogger.java:118)
        at 
org.slf4j.spi.DefaultLoggingEventBuilder.logViaPublicSLF4JLoggerAPI(DefaultLoggingEventBuilder.java:213)
        at 
org.slf4j.spi.DefaultLoggingEventBuilder.log(DefaultLoggingEventBuilder.java:167)
        at 
org.slf4j.spi.DefaultLoggingEventBuilder.log(DefaultLoggingEventBuilder.java:122)
        at 
org.apache.maven.cling.invoker.LookupInvoker.lambda$container$11(LookupInvoker.java:417)
        at org.apache.maven.api.cli.Logger.error(Logger.java:137)
        at 
org.apache.maven.cling.invoker.LookupInvoker.handleException(LookupInvoker.java:151)
        at 
org.apache.maven.cling.invoker.LookupInvoker.invoke(LookupInvoker.java:120)
        at org.apache.maven.cling.ClingSupport.run(ClingSupport.java:64)
        at org.apache.maven.cling.MavenCling.main(MavenCling.java:51)
        at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:255)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:201)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:361)
        at 
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:314)
----

Is this expected or should I create a ticket for this? Is there another way to 
configure a custom date time format? If I use 
-Dorg.slf4j.simpleLogger.showDateTime=true and don’t set 
‘org.slf4j.simpleLogger.dateTimeFormat’ then the build works, but then each log 
line is only prefixed with the number of milliseconds since Maven started, and 
I’d prefer an absolute timestamp.

Nils.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to