[
https://issues.apache.org/jira/browse/LANG-1786?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18024800#comment-18024800
]
Lenny Primak commented on LANG-1786:
------------------------------------
{code:java}
at java.util.TimeZone.getTimeZone(TimeZone.java:549)
at
org.apache.commons.lang3.time.FastDateParser$TimeZoneStrategy.<init>(FastDateParser.java:531)
at
org.apache.commons.lang3.time.FastDateParser.lambda$getLocaleSpecificStrategy$2(FastDateParser.java:883)
at
org.apache.commons.lang3.time.FastDateParser$$Lambda/0x000007f001394d78.apply(Unknown
Source:-1)
at
java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1724)
at
org.apache.commons.lang3.time.FastDateParser.getLocaleSpecificStrategy(FastDateParser.java:882)
at
org.apache.commons.lang3.time.FastDateParser.getStrategy(FastDateParser.java:953)
at
org.apache.commons.lang3.time.FastDateParser.access$500(FastDateParser.java:82)
at
org.apache.commons.lang3.time.FastDateParser$StrategyParser.letterPattern(FastDateParser.java:450)
at
org.apache.commons.lang3.time.FastDateParser$StrategyParser.getNextStrategy(FastDateParser.java:436)
at org.apache.commons.lang3.time.FastDateParser.init(FastDateParser.java:984)
at org.apache.commons.lang3.time.FastDateParser.<init>(FastDateParser.java:833)
at org.apache.commons.lang3.time.FastDateFormat.<init>(FastDateFormat.java:398)
at org.apache.commons.lang3.time.FastDateFormat.<init>(FastDateFormat.java:383)
at
org.apache.commons.lang3.time.FastDateFormat$1.createInstance(FastDateFormat.java:107)
at
org.apache.commons.lang3.time.FastDateFormat$1.createInstance(FastDateFormat.java:104)
at
org.apache.commons.lang3.time.AbstractFormatCache.lambda$getInstance$1(AbstractFormatCache.java:223)
at
org.apache.commons.lang3.time.AbstractFormatCache$$Lambda/0x000007f001389570.apply(Unknown
Source:-1)
at
java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1724)
at
org.apache.commons.lang3.time.AbstractFormatCache.getInstance(AbstractFormatCache.java:223)
at
org.apache.commons.lang3.time.FastDateFormat.getInstance(FastDateFormat.java:272)
at
org.apache.commons.lang3.time.DateFormatUtils.<clinit>(DateFormatUtils.java:198)
at
org.apache.rat.report.claim.impl.xml.SimpleXmlClaimReporter.startReport(SimpleXmlClaimReporter.java:131)
at
org.apache.rat.report.claim.util.ClaimReporterMultiplexer.startReport(ClaimReporterMultiplexer.java:54)
at org.apache.rat.Reporter.report(Reporter.java:99)
at org.apache.rat.Reporter.report(Reporter.java:72)
at org.apache.rat.mp.RatCheckMojo.execute(RatCheckMojo.java:123)
at
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:146)
at
org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:339)
at
org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:310)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:214)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:179)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:168)
at
org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:165)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:110)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76)
at
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:61)
at
org.apache.maven.lifecycle.internal.DefaultLifecycleStarter.execute(DefaultLifecycleStarter.java:123)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:310)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:225)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:149)
at
org.apache.maven.cling.invoker.mvn.MavenInvoker.doExecute(MavenInvoker.java:449)
at org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:97)
at org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:81)
at org.apache.maven.cling.invoker.LookupInvoker.doInvoke(LookupInvoker.java:165)
at org.apache.maven.cling.invoker.LookupInvoker.invoke(LookupInvoker.java:135)
at org.apache.maven.cling.ClingSupport.run(ClingSupport.java:76)
at org.apache.maven.cling.MavenCling.main(MavenCling.java:51)
at
java.lang.invoke.DirectMethodHandle$Holder.invokeStatic(DirectMethodHandle$Holder:-1)
at java.lang.invoke.LambdaForm$MH/0x000007f001045000.invoke(LambdaForm$MH:-1)
at
java.lang.invoke.LambdaForm$MH/0x000007f001045400.invokeExact_MT(LambdaForm$MH:-1)
at
jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl(DirectMethodHandleAccessor.java:156)
at
jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.lang.reflect.Method.invoke(Method.java:565)
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)
{code}
> A lot of warnings on the console when using FastDateFormat with JDK25
> ---------------------------------------------------------------------
>
> Key: LANG-1786
> URL: https://issues.apache.org/jira/browse/LANG-1786
> Project: Commons Lang
> Issue Type: Improvement
> Components: lang.time.*
> Affects Versions: 3.19.0
> Reporter: Daniel Migowski
> Priority: Major
> Fix For: Patch Needed
>
>
> When using an instance of FastDateFormat with e.g.
> {code:java}
> FastDateFormat.getInstance( "yyyy-MM-dd'T'HH:mm:ssZ" );{code}
> the timezone database of the commons.lang package iterates throught all
> timezones and adds them to the local database. This sadly calls
> {code:java}
> java.util.TimeZone.getTimeZone(String){code}
> with a bunch of timezone strings that are considered deprecated with the new
> JDK25 (or something between 18 and 25, didn't check that), and each of these
> timezone strings leads to a message like
> {noformat}
> WARNING: Use of the three-letter time zone ID "ACT" is deprecated and it will
> be removed in a future release{noformat}
> printed directly from the getTimeZone function to system.err!
> This is actually really annoying. The timezone strings which are deprecated
> can be found in
> {code:java}
> java.time.ZoneId.SHORT_IDS.{code}
> My suggestion is to check in
> {code:java}
> org.apache.commons.lang3.time.FastDateParser.TimeZoneStrategy.TimeZoneStrategy{code}
> if the JDK version 25 is running and then to filter the values from SHORT_IDS
> to be recognized. SHORT_IDS should be copied into commons.lang to make this
> still work with older JDKs.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)