Na górze róże
Na dole bez
illegal access
Dopadnie cię też!
Jako programiście/programistce Javy (jeśli choć raz udało Ci się wyjść poza strefę komfortu Javy 8) mogło Ci się tak przytrafić, iż Twym oczom (w logu albo w konsoli) ukazało się poniższe ostrzeżenie:
WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.przybyl.ddj16.stronglyEncapsulatedInternals.StronglyEncapsulatedInternals to field java.lang.String.value WARNING: Please consider reporting this to the maintainers of org.przybyl.ddj16.stronglyEncapsulatedInternals.StronglyEncapsulatedInternals WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future releaseOd wydania Javy 9 wiele zostało powiedziane i napisane o projekcie Jigsaw, który nie tylko zmodularyzował samo JDK (nie ma rt.jar!), ale także przyniósł nam koncepcję illegal access (nielegalny dostęp). W jednym z moich wykładów Java. Migrating to 11 in real app wyjaśniam, o co w tym chodzi, a ten wpis zacznijmy od szybkiej powtórki (bo nie musiałeś/musiałaś go przecież widzieć).
Niestety, tłumacz wziął wolne. Wpis dostępny po angielsku.