Hi Oliver, That's great, thanks for your help.
Rgds,Rory On 19/06/2015 16:27, Oliver Heger wrote:
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. Regards Oliver 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 <https://jdk8.java.net/download.html>). You do not need to actually test or run your application on JDK8. JDeps(Docs <http://docs.oracle.com/javase/8/docs/technotes/tools/unix/jdeps.html>) 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) -> com.sun.corba.se 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] https://wiki.openjdk.java.net/display/JDK8/Java+Dependency+Analysis+Tool--------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
-- Rgds,Rory O'Donnell Quality Engineering Manager Oracle EMEA , Dublin, Ireland --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
