Что такое подписчики класса на Java?

Класс Class<?> имеет метод public Object[] getSigners(), JavaDoc которого не очень помогает в объяснении того, что делает этот метод; вызвав его на пару классов, вернул null для меня.

Google только вернула информацию об исключениях безопасности, в которых не упоминалось о подписчиках класса; Я видел там об этих исключениях, когда одни и те же классы загружаются из нескольких банок.

Что именно представляет собой подписчик класса Java? Это какой-то уникальный идентификатор, предоставляемый JVM или инструментом, когда подписан Jar?

В StackOverflow есть тег для подписывающего лица, но он пуст...

Ответ 1

Когда вы подписываете файл .jar в Java, Toolsigner проходит через него и рекурсивно подписывает каждый файл в .jar. Однако это не ограничивается только одним подписывающим устройством, поскольку вы можете подписать файл со многими различными сертификатами. Когда вы проверяете, что файл подписан соответствующим подписчиком, вы можете вызвать метод getSigners(), чтобы вернуть список всех подписывающих лиц, подписавших этот класс.