Отражение Java с помощью Java-процесса

У меня есть процесс, который является приложением Java, который был создан из ProcessBuilder, выполнив команду, как java -Xms1024M -jar my.jar, Это работает фантастически, но приложение, которое я запустил, не использует System.in для его ввода, поэтому я не могу использовать process.getOutputStream(),

Как я могу получить экземпляр запущенного приложения из процесса, чтобы использовать Java Reflection для отправки ввода? Если я не могу, как бы я использовал Java Reflection, чтобы запустить приложение из моего запускаемого приложения, а затем использовать Java Reflection, чтобы получить то, с чем я могу работать.

Чтобы быть более конкретным, я пытаюсь сделать это для BungeeCord.

  • Основной класс net.md_5.bungee.Bootstrap,
  • Bootstrap вызывает статический метод main в net.md_5.bungee.BungeeCordLauncher,
  • BungeeCordLauncher создает экземпляр net.md_5.bungee и помещает этот экземпляр в статическое поле с именем instance в net.md_5.bungee.api.ProxyServer И есть метод get (Может быть, это можно использовать для отражения Java?)
  • внутри BungeeCord.class есть метод, называемый getConsoleReader() и это то, что мне в конечном итоге нужно получить, и мне нужен его текущий экземпляр для этого конкретного процесса.

Спасибо за любую помощь!

0 ответов

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