[Gvsig_desarrolladores] Error al cargar extensiones en el arranque de gvSIG

Iago Alonso Alonso ialonso en enxenio.es
Lun Mar 12 09:16:06 CET 2018


Hola Joaquín, resulta que era esto:

o... ¿ Igual has renombrado la clase y no has ido a renombrarla en el
fichero ?
Los refactoring del IDE no tocan ese fichero.

Ya que tenía problemas con la longitud de las rutas de algunas clases
porque eran muy largas y al renombrar la clase, se me olvidó cambiarla
ahí. 

Muchas gracias, un saludo! 

El 08-03-2018 02:36 PM, Joaquin Jose del Cerro Murciano escribió:

> El 2 de marzo de 2018, 9:47, Iago Alonso Alonso <ialonso en 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 en 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 en 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 en 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 [1]
> 
> -- 
> --------------------------------------
> Joaquin Jose del Cerro Murciano
> Development and software arquitecture manager at gvSIG Team
> jjdelcerro en gvsig.com
> jjdelcerro en gvsig.org
> gvSIG Association
> www.gvsig.com [2]
> www.gvsig.org [3] 
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en 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
 

Links:
------
[1]
https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
[2] http://www.gvsig.com
[3] http://www.gvsig.org
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20180312/21aeef24/attachment.html>


Más información sobre la lista de distribución gvSIG_desarrolladores