Thank you, Chandan.

I am on it and will revert back shortly.

Thanks,
Ashish
Sent from my iPhone

On Fri, 17 Jul 2026 at 12:24 PM, Chandan Khandelwal <
[email protected]> wrote:

> Hello Ashsih,
>
> Thanks for sharing the details.
>
> I tested the changes with both JDK 17 and JDK 21 using ./gradlew clean
> test,
> and the build/tests completed successfully on both versions.
>
> One observation during the JDK 21 build: I noticed compiler warnings
> similar to the below:
>
> > Task :compileJava
> UtilCache.java:1: warning: [dangling-doc-comments] documentation
> comment is not attached to any declaration
> ExecutionPool.java:1: warning: [dangling-doc-comments] documentation
> comment is not attached to any declaration
> .....
>
> It looks like the JDK 21 compiler is interpreting the license headers
> starting with /**************** as dangling Javadoc comments due to the /**
> sequence at the beginning. Could you please confirm if this is expected
> behavior with JDK 21, or if any cleanup is required?
>
> Overall, the approach of keeping Java 17 as the target version while
> validating Java 21 compatibility looks good. Please let me know if I am
> missing anything.
>
>
> Kind Regards,
> Chandan Khandelwal
>
>
>
> On Thu, Jul 16, 2026 at 3:49 PM Ashish Vijaywargiya <[email protected]>
> wrote:
>
> > Hello All,
> >
> > I recently worked on a Jira issue (Upgrade java version to 21):
> > https://issues.apache.org/jira/browse/OFBIZ-13306
> >
> > First of all, I provided support for Java 21 in the OFBiz trunk code. And
> > then after reading the comment on Jira, I concluded to provide support
> for
> > both Java17 and Java21 in the ofbiz trunk.
> >
> > More details below:
> >
> > Since Release24.09 still runs on Java 17, we've rolled trunk's compile
> > target back to Java 17 while keeping it tested on Java 21 too.
> >
> > Summary:
> >
> > 1) build.gradle and gradle.yml now target Java 17 again (bytecode,
> javadoc,
> > CI). Please refer how I have used metrix support in gradle.yml file.
> >
> > 2) CI now runs a JDK matrix (17 and 21) on every push/PR, skipping 21 for
> > release* branches.
> >
> > 3) Reverted Java 19+ only calls (Locale.of, Thread.threadId) back to
> their
> > pre-19 equivalents across 16 files, since JDK 17 doesn't have them.
> >
> > 4) Confirmed those older calls are only "deprecated," not "removed," so
> > they're safe on both JDK versions.
> >
> > 5) Cleaned up all resulting compiler warnings with narrowly-scoped
> > @SuppressWarnings("deprecation").
> >
> > 6) Also caught and reverted two committed secret values in
> > security.properties back to blank.
> >
> > 7) Ran the full unit test suite (423 tests) on both JDK 17 and JDK 21 — 0
> > warnings, 0 failures on both.
> >
> > 8) I have built and run the code on my laptop. Here is the console
> output.
> >
> >
> >
> https://issues.apache.org/jira/secure/attachment/13083276/console-output-java17.txt
> >
> >
> >
> https://issues.apache.org/jira/secure/attachment/13083277/console-output-java21.txt
> >
> > Here is the PR of my work:
> > https://github.com/apache/ofbiz-framework/pull/1460
> >
> > Now I am all set to start using ofbiz trunk code on Java21 in my laptop
> and
> > others can also do the same.
> >
> > Please let me know if you may require further assistance on this work.
> >
> > Thanks & Regards,
> > Ashish Vijaywargiya
> > https://www.linkedin.com/in/ashishvijaywargiya/
> >
>

Reply via email to