In un normale applicazione java sua possibile stampare il contenuto del classpath con:Stampa percorso classe bundle OSGI?
String ss = System.getProperty("java.class.path");
System.out.println(ss);
Ma come faccio a stampare il percorso di classe di un pacchetto OSGI creata usando la procedura guidata Eclipse PDE? Nell'attivatore è possibile ottenere il pacchetto corrente come:
pubblico void start (contesto BundleContext) genera Eccezione { super.start (contesto); plugin = this;
Bundle b = context.getBundle();
// java doc: This bundle's class loader is not used to search for entries.
b.findEntries(path, filePattern, recurse)
Ma javadoc dice che findEntries NON utilizza il caricatore di classe. C'è un modo semplice per vedere/stampare ciò che si trova nel classpath del pacchetto corrente?
La prima domanda è: perché vuoi farlo? Non esiste una nozione reale di classpath per un pacchetto, ma solo un insieme di classi accessibili. –
Giusto per essere chiari: c'è un'intestazione di bundle nota come Bundle-ClassPath (osgi core 3.2.1.4), ma dato il tuo esempio "java.class.path", probabilmente questo non è ciò che intendi. –