apache / apache/openwhisk-runtime-java

JarLoader breaks strong encapsulation of JDK classes

Offen
#10 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
47
Forks
58
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

`JarLoader#augmentEnv` performs illegal access on core JDK classes by breaking accessibility rules. This breaks the strong encapsulation rules outlined in [JEP 261](http://openjdk.java.net/jeps/261). Starting with Java 9 this will print a warning by default on the command line (and possibly have a performance and runtime impact). At some yet to be defined point in the future this will throw an exception by default. At some later yet to be defined point in the future this will always throw an exception.

I don't see an alternative to entirely moving away from modifying environment variables. They are readonly in Java. Modifying them is a hack that makes testing hard and multi threading impossible.

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.