Как получить уведомление, когда выполняется метод из другой JVM, и получить дескриптор аргументов

Есть ли способ получить уведомление при вызове метода из другой JVM.

Dev Env: JDK8, Windows 10 (позже в облаке для развертывания).

У меня работает несколько приложений Java, одно на сервере приложений, а другое - это автономный пакетный процесс.

Всякий раз, когда основной метод класса Java вызывается на любой из этих JVM, например PrintStream.print, мне нужно получить дескриптор для ввода строки и зарегистрировать ее в другом месте.

Я пробовал с 1. Библиотеками манипулирования байт-кодом Java, например Javassist, для преобразования байт-кода с помощью инструментария, но это позволяет обрабатывать и управлять только пользовательскими классами / классами сторонних библиотек - не java., солнце. и т.д... (даже если мы каким-то образом сделаем это, он говорит - это нарушает двоичную лицензию JRE - Официальный Javadoc говорит, что этот процесс инструментовки класса rt.jar нарушает лицензию двоичного кода JRE - так что это может быть не подход, который следует делать дальше. https://docs.oracle.com/javase/8/docs/technotes/tools/windows/java.html)

  1. Отражения - можно использовать, когда вы находитесь на одной JVM, но не уверены, работает ли она на другой JVM.

    Цените предложения.

0 ответов

Другие вопросы по тегам