commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oliver Heger <>
Subject Re: Apache Commons Configuration & Bean Scripting Framework (BSF) - dependencies on JDK-Internal APIs
Date Fri, 19 Jun 2015 15:27:51 GMT
Hi Rory,

I just ran JDeps against the current beta-1 release of Commons
Configuration 2.0 and all its dependencies. When specifying the
"-jdkinternals" option there is no output. So I think, we are clean here.


Am 15.06.2015 um 10:04 schrieb Rory O'Donnell:
> Hi Benedict,
> I'm contacting you in relation to Apache Commons Configuration & Bean
> Scripting Framework (BSF),  both projects seems to be  very popular
> dependencies for other open source projects.
> As part of the preparations for JDK 9, Oracle’s engineers have been
> analyzing open source projects like yours to understand usage. One area
> of concern involves identifying compatibility problems, such as reliance
> on JDK-internal APIs.
> Our engineers have already prepared guidance on migrating some of the
> more common usage patterns of JDK-internal APIs to supported public
> interfaces.  The list is on the OpenJDK wiki [0].
> As part of the ongoing development of JDK 9, I would like to inquire
> about your usage of  JDK-internal APIs and to encourage migration
> towards supported Java APIs if necessary.
> The first step is to identify if your application(s) is leveraging
> internal APIs.
> /Step 1: Download JDeps. /
>    Just download a preview release of JDK8(JDeps Download
>    <>). You do not need to actually
>    test or run your application on JDK8. JDeps(Docs
>    <>)
>    looks through JAR files and identifies which JAR files use internal
>    APIs and then lists those APIs.
> /Step 2: To run JDeps against an application/. The command looks like:
>    jdk8/bin/jdeps -P -jdkinternals *.jar > your-application.jdeps.txt
>    The output inside your-application.jdeps.txt will look like:
>    your.package (Filename.jar)
>           ->            JDK internal API (rt.jar)
> _3rd party library using Internal APIs:_
> If your analysis uncovers a third-party component that you rely on, you
> can contact the provider and let them know of the upcoming changes. You
> can then either work with the provider to get an updated library that
> won't rely on Internal APIs, or you can find an alternative provider for
> the capabilities that the offending library provides.
> _Dynamic use of Internal APIs:_
> JDeps can not detect dynamic use of internal APIs, for example through
> reflection, service loaders and similar mechanisms.
> Rgds,Rory
> [0]

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message