Зачем вам создавать пункт меню для каждого пакета, который существует в представлении?Это на самом деле не имеет смысла.
Вы / можете / сделать это, создав приложение с графическим интерфейсом, а затем в методе start () сохранить контекст и затем использовать его для запроса списка всех пакетов всистема.Возможно, вы захотите сделать это по требованию, когда будет показано ваше меню (чтобы вы могли видеть текущий список).
Однако вы действительно думаете не в том направлении.То, что вы хотите сделать, это искать / услуги /.Когда сервис входит, вы используете его для заполнения пункта меню.Таким образом, вы можете иметь несколько сервисов в каждом пакете, и сервисы могут иметь некоторую форму взаимодействия.
Нил Бартлетт и я поговорили именно об этом подходе для приложения на основе Swing (хотя и с использованием зарегистрированных объектов Action),Демонстрация и презентация по-прежнему доступны по этому адресу:
http://www.eclipsezone.com/files/jsig/
Обратите внимание, что это было сделано во время OSGi v4, поэтому вы можете обнаружить, что установка не удалась с несовпадающей версиейструктура импорта.Если это так, взломайте файл и убедитесь, что он не говорит Import-Package: org.osgi.framework;version="[1.3.0,1.4.0)"
или что-то подобное - избавьтесь от номеров версий, и он все равно должен работать сегодня.