You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by Mike Kienenberger <mk...@gmail.com> on 2015/06/15 18:42:42 UTC

Re: Apache Flex dependencies on JDK-Internal APIs

If you want to reach Apache Flex developers, you'll need to use
dev@flex.apache.org rather than dev@myfaces.apache.org.

Since you posted this publicly on the MyFaces development list, I'm
going to assume you meant for your Apache Flex  message to also be
posted publicly, and I am cc'ing dev@flex.apache.org as well.


On Mon, Jun 15, 2015 at 9:10 AM, Rory O'Donnell
<ro...@oracle.com> wrote:
>
> Hi,
>
> My name is Rory O'Donnell, I am the OpenJDK Quality Group Lead.
>
> I'm contacting you because your open source project seems to be a very
> popular dependency 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)
>       -> 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
>
> --
> Rgds,Rory O'Donnell
> Quality Engineering Manager
> Oracle EMEA , Dublin, Ireland

Re: Apache Flex dependencies on JDK-Internal APIs

Posted by Rory O'Donnell <ro...@oracle.com>.
Hi,

Just wondering if anyone has had a chance to run the jdeps tool to check 
for dependencies on JDK-Internal APIs ?

Rgds,Rory

On 15/06/2015 17:42, Mike Kienenberger wrote:
> If you want to reach Apache Flex developers, you'll need to use
> dev@flex.apache.org rather than dev@myfaces.apache.org.
>
> Since you posted this publicly on the MyFaces development list, I'm
> going to assume you meant for your Apache Flex  message to also be
> posted publicly, and I am cc'ing dev@flex.apache.org as well.
>
>
> On Mon, Jun 15, 2015 at 9:10 AM, Rory O'Donnell
> <ro...@oracle.com> wrote:
>> Hi,
>>
>> My name is Rory O'Donnell, I am the OpenJDK Quality Group Lead.
>>
>> I'm contacting you because your open source project seems to be a very
>> popular dependency 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)
>>        -> 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
>>
>> --
>> Rgds,Rory O'Donnell
>> Quality Engineering Manager
>> Oracle EMEA , Dublin, Ireland

-- 
Rgds,Rory O'Donnell
Quality Engineering Manager
Oracle EMEA , Dublin, Ireland