en una aplicación Java normal de su posible imprimir el contenido de la ruta de clases con:¿Imprime OSGI bundle classpath?
String ss = System.getProperty("java.class.path");
System.out.println(ss);
Pero, ¿cómo hago para imprimir la ruta de clase de un paquete OSGi creado usando el asistente de Eclipse PDE? En el activador es posible obtener el paquete actual como:
public void start (contexto BundleContext) throws Excepción { super.start (context); 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)
Pero el javadoc dice que findEntries NO usa el cargador de clases. ¿Hay alguna forma simple de ver/imprimir lo que está en el classpath del paquete actual?
primera pregunta es: ¿por qué quieres hacer eso? No existe una noción real de una ruta de clases para un paquete, simplemente un conjunto de clases que son accesibles. –
Para que quede claro: hay un paquete de cabecera conocido como Bundle-ClassPath (núcleo osgi 3.2.1.4), pero teniendo en cuenta su "java.class.path" ejemplo, esto probablemente no es lo que quiere decir. –