Source: narcissus Section: java Priority: optional Maintainer: Debian Java Maintainers Uploaders: Joseph Nahmias , Build-Depends: debhelper-compat (= 13), Build-Depends-Indep: default-jdk, maven-debian-helper, libmaven-antrun-plugin-java, Standards-Version: 4.7.2 Rules-Requires-Root: no Vcs-Git: https://salsa.debian.org/java-team/narcissus.git Vcs-Browser: https://salsa.debian.org/java-team/narcissus Homepage: https://github.com/toolfactory/narcissus Description: limited Java reflection library that bypasses security Narcissus is a JNI native code library that provides a small subset of the Java reflection API, while bypassing all of Java's access/visibility checks, security manager restrictions, and module strong encapsulation enforcement, by calling methods and accessing fields through the JNI API. This allows code that relies on reflective access to non-public classes, fields, and methods to keep working even now that strong encapsulation is being enforced in JDK 16+. . Narcissus works on JDK 7+, however it is most useful for suppressing reflective access warnings in JDK 9-15, and for circumventing strong encapsulation for JDK 16+, in order to keep legacy software running (for example, when legacy software depends upon setAccessible to access a needed private field of a class in some library). Package: libnarcissus-java Architecture: all Depends: libnarcissus-jni, ${maven:Depends}, ${misc:Depends}, Suggests: ${maven:OptionalDepends} Description: ${source:Synopsis} ${source:Extended-Description} . This package contains the Java bindings / API / library (jar). Package: libnarcissus-jni Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, Multi-Arch: same Description: ${source:Synopsis} ${source:Extended-Description} . This package contains the native/compiled Java Native Interface (JNI) library.