Yes, it is somewhat tricky to add a new qualified export. I would expect that to be rare.

For JDK 9 let's go with the public API since it will be fewer moving parts.

-- Kevin


Laurent Bourgès wrote:
Kevin & David,

It seems tricky to add a module dependency !

2016-11-09 14:51 GMT+01:00 Kevin Rushforth <kevin.rushfo...@oracle.com <mailto:kevin.rushfo...@oracle.com>>:

    My recommendation would be to avoid this dependency if possible,
    but if not, then Dave's suggestion is the way to go. What is it
    that you need from jdk.internal.ref that you can't do using public
    API?


Marlin (OpenJDK) use jdk.internal.ref.CleanerFactory.cleaner() to get the java.base Cleaner instance (Thread).

I agree for Marlin-FX, it will be easier to use the public Cleaner API but it will cost creating another thread.

Here is the current fix :

    // JavaFX specific Cleaner for Marlin-FX:
    // Module issue with jdk.internal.ref.Cleaner
    private final static java.lang.ref.Cleaner cleaner
        = java.lang.ref.Cleaner.create();

    static java.lang.ref.Cleaner getCleaner() {
        return cleaner;
    }

instead of:
/*
    static jdk.internal.ref.Cleaner getCleaner() {
        return jdk.internal.ref.CleanerFactory.cleaner();
    }
*/

Regards,
Laurent

Reply via email to