Любые предложения относительно того, как подойти, как я узнаю список имен пакетов, которые существуют в текущем пути к классам?
Это необходимо выполнить программно во время выполнения одним из классов, загруженных (и выполняющихся) в пути к классам (т.е. наизнанку, а не снаружи).
Подробнее:
Один из подходов, который я рассматривал, состоял в том, чтобы использовать отражение для каждого из классов, загруженных до сих пор загрузчиком классов, и извлекать из них имена пакетов. Однако мое приложение уже запускается в тысячи классов, поэтому мне нужен более эффективный подход.
Еще одна вещь, которую я рассматривал, была чем-то аналогичным тому, чтобы узнать, какие файлы JAR были в пути к классу, а затем сделать список каталогов параллельным для каждого JAR. Однако я не знаю, возможно ли это из приложения/как это сделать.
Бонусные очки
Бонусные баллы для всех, кто предлагает способ, который может фильтровать пакеты верхнего уровня. Например. показать все пакеты под com.xyz
== > com.xyz.*
, com.xyz.*.*
Спасибо!