Ich habe den folgenden Code den Standard URLStreamHandlers
für HTTP und HTTPS, die in Java 8 durch den Zugriff auf die statische Paket URL.getURLStreamHandler()
scoped Methode funktioniert abzurufen:Ist es möglich, durch Reflexion in Java 9 mit Jigsaw auf paketorientierte Methoden zuzugreifen?
private URLStreamHandler getURLStreamHandler(String protocol) {
try {
Method method = URL.class.getDeclaredMethod("getURLStreamHandler", String.class);
method.setAccessible(true);
return (URLStreamHandler) method.invoke(null, protocol);
} catch (Exception e) {
logger.warning("could not access URL.getUrlStreamHandler");
return null;
}
}
Wird dies noch möglich sein, in Java 9 mit jigsaw oder wird modifiziert die Sichtbarkeit auf diese Weise verboten sein?
Die Möglichkeit, auf sie über eine Zugriffsüberschreibung zuzugreifen, kann existieren, aber da package-private Methoden nicht Teil der offiziellen API sind, gibt es keine Garantie, dass die Methode überhaupt existiert ... – Holger