Domanda

E 'possibile leggere una funzione come la sua possibile leggere un plugin utilizzare l'API eclisse PDE? Attualmente ho letto i plugin usando:

        Bundle[] bundles = Platform.getBundles(name, version);
        if (bundles == null) {
          throw new NullPointerException("No bundle found with ID: " + name
              + " and version: " + version);

        } else {
          for (Bundle bundle : bundles) {
            System.out.println(bundle.getSymbolicName());

          }

        }

Ma se a specificare il nome di una caratteristica installata ottengo solo null. C'è qualche altro modo che le caratteristiche devono essere lette?

E quando ho letto la caratteristica vorrei iterare tutti i plugin che riferimento.

È stato utile?

Soluzione

Si può provare a utilizzare p2 API per interrogare la funzione installata. P2 è il manager di installazione Eclipse.

// IProvisioningAgent is a OSGi service
IProvisioningAgent agent = ...;
IProfileRegistry profileRegistry = (IProfileRegistry) agent.getService(IProfileRegistry.SERVICE_NAME);
IProfile profile = profileRegistry.getProfile(IProfileRegistry.SELF);
IQueryResult rt = profile.query(QueryUtil.createIUPropertyQuery("org.eclipse.equinox.p2.eclipse.type", "feature"), null);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top