El 2 de marzo de 2018, 9:47, Iago Alonso Alonso <ialo...@enxenio.es> escribió:
> Hola, hace un tiempo realicé dos extensiones de edición y funcionaban, el > problema es que no sé qué he podido cambiar y ahora ya no funcionan. El > error que aparece en el log es: > > INFO main org.gvsig.tools.util.impl.DefaultServiceLoader - Loading > interface org.gvsig.tools.library.Library implementations from > 'org.gvsig.andami.plugins.PluginClassLoader@b73e7a > (es.dicoruna.giseiel.editing)' class loader (using java.util.ServiceLoader > class). > ERROR main org.gvsig.tools.util.impl.DefaultServiceLoader - Can't load > service > (es.udc.lbd.giseiel.editing.lib.prov.multilinea.MultilineaEditingLibrary) > from org.gvsig.andami.plugins.PluginClassLoader@b73e7a > (es.dicoruna.giseiel.editing). > java.util.ServiceConfigurationError: org.gvsig.tools.library.Library: > Provider es.udc.lbd.giseiel.editing.lib.prov.redigitalizarPoligono. > RedigitalizarPoligonoEditingLibrary not found > at java.util.ServiceLoader.fail(ServiceLoader.java:239) > at java.util.ServiceLoader.access$300(ServiceLoader.java:185) > at java.util.ServiceLoader$LazyIterator.nextService( > ServiceLoader.java:372) > at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) > at java.util.ServiceLoader$1.next(ServiceLoader.java:480) > at org.gvsig.tools.util.impl.DefaultServiceLoader.postJDK16Load( > DefaultServiceLoader.java:232) > at org.gvsig.tools.util.impl.DefaultServiceLoader.load( > DefaultServiceLoader.java:101) > at org.gvsig.tools.library.impl.DefaultLibrariesInitializer. > findLibraries(DefaultLibrariesInitializer.java:77) > at org.gvsig.tools.library.AbstractLibrariesInitializer. > addLibrariesOfClassLoader(AbstractLibrariesInitializer.java:194) > at org.gvsig.tools.library.AbstractLibrariesInitializer.loadLibraries( > AbstractLibrariesInitializer.java:136) > at org.gvsig.tools.library.AbstractLibrariesInitializer.initialize( > AbstractLibrariesInitializer.java:85) > at org.gvsig.tools.library.AbstractLibrariesInitializer. > fullInitialize(AbstractLibrariesInitializer.java:115) > at org.gvsig.andami.Launcher.initializeLibraries(Launcher.java:782) > at org.gvsig.andami.Launcher.doMain(Launcher.java:570) > at org.gvsig.andami.Launcher.main(Launcher.java:395) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke( > NativeMethodAccessorImpl.java:62) > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:497) > at org.gvsig.andamiupdater.Updater.launchApp(Updater.java:89) > at org.gvsig.andamiupdater.Updater.main(Updater.java:67) > > Y he revisado el código pero no recuerdo dónde se le indica a gvSIG que se > registre una extensión. En cada extensión tengo el correspondiente > "Library, Provider y ProviderFactory" que he visto en otras extensiones de > gvSIG de las cuales seguí el patrón para hacer estas dos. > > ¿Alquien sabe qué he podido tocar o cambiar sin darme cuenta para que > ahora salga este error y no funcionen las extensiones? > > Hola Iago. Por lo que puedo ver en el error, yo diria que cuando se estaban inicializando las librerias del plugin "es.dicoruna.giseiel.editing" se ha encontrado con que le fataba la clase: "es.udc.lbd.giseiel.editing.lib.prov.redigitalizarPoligono.RedigitalizarPoligonoEditingLibrary" Para que la inicializacion de las librerias, "Library", de gvSIG se realice estamos usando "java.util.ServiceLoader". Este servicio de java busca los recursos "META-INF/services/org.gvsig.tools.library.Library" que pueda encontrar en el classpath y carga las clases que ahi se indican. El error que esta dando es que entre los jars de tu plugin "es.dicoruna.giseiel.editing" tienes un fichero "META-INF/services/org.gvsig.tools.library.Library" en el que figura una linea: es.udc.lbd.giseiel.editing.lib.prov.redigitalizarPoligono.RedigitalizarPoligonoEditingLibrary Para asi indicarle que debe cargar esa clase. Y resulta que en el classpath no se encuentra la clase. ¿ Es posible que hayas borrado esa clase y se te haya olvidado quitarla del fichero "META-INF/services/org.gvsig.tools.library.Library" que toque ? o... ¿ Igual has renombrado la clase y no has ido a renombrarla en el fichero ? Los refactoring del IDE no tocan ese fichero. o... ¿ Te puede faltar desplegar el jar donde este en el plugin "es.dicor?una.giseiel.editing" ? ¿ Es posible que la clase este en otro plugin y te falte añadir la dependencia en el config.xml de "es.dicor?una.giseiel.editing" ? Si fuese esto ultimo, yo eliminaria la entrada en el fichero del plugin "es.dicor?una.giseiel.editing" y la dejaria en el plugin en que estuviese. Bueno, esto ya es elucubrar. Con la poca info que dispongo no puedo contarte mas. Un saludo Joaquin > Un saludo y gracias. > > _______________________________________________ > gvSIG_desarrolladores mailing list > gvSIG_desarrolladores@listserv.gva.es > Para ver histórico de mensajes, editar sus preferencias de usuario o darse > de baja en esta lista, acuda a la siguiente dirección: > https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores > > -- -------------------------------------- Joaquin Jose del Cerro Murciano Development and software arquitecture manager at gvSIG Team jjdelce...@gvsig.com jjdelce...@gvsig.org gvSIG Association www.gvsig.com www.gvsig.org
_______________________________________________ gvSIG_desarrolladores mailing list gvSIG_desarrolladores@listserv.gva.es Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección: https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores