gvSIG bugs #2944

Duplicated classes after the update of an addon

Added by Antonio Falciano over 9 years ago. Updated about 9 years ago.

Status:New% Done:

0%

Priority:HighSpent time:-
Assignee:-
Category:Add-ons
Target version:-
Severity:Blocker Add-on version:
gvSIG version:2.1.0 Add-on build:
gvSIG build:2254 Add-on resolve version:
Operative System: Add-on resolve build:
Keywords:addons, uninstall, usability Proyecto:
Has patch: Hito:
Add-on name:Unknown

Description

After the update of the three geoprocesses addons, gvSIG is not restarted in Windows. Then, if I execute gvSIG as admin, gvSIG starts to work again, but all the Geoprocesses classes are duplicated (see the screenshot in attachment). Removing the three extension folders manually and reinstalling them again from the Addons manager solves the issue, but a new user could think that gvSIG is broken.
Related to #2881, #2807 and #2179.

duplicated_classes.png (120 KB) Antonio Falciano, 10/28/2014 04:30 AM

Geoprocesses_install_2254.log (353 KB) Antonio Falciano, 10/28/2014 05:22 AM

gvSIG-installer.log (73.4 KB) Antonio Falciano, 10/28/2014 05:22 AM

Geoprocesses_after_install_2254.log (318 KB) Antonio Falciano, 10/28/2014 05:22 AM

gvSIG.log (374 KB) Antonio Falciano, 02/26/2015 12:07 PM

1117

Related issues

Duplicated by Application: gvSIG desktop - gvSIG bugs #2961: Problema en el arranque con el último build de geoproceso... Invalid 11/03/2014

History

#1 Updated by Joaquín del Cerro Murciano over 9 years ago

Hola Antonio,
he intentado reproducirlo y no me ha pasado.
He hecho:

  • Instalar un gvSIG 2254 en una carpeta nueva.
  • Me he cerciorado que en org.gvsig.geoprocess.app.algorithm/lib habian jars version 2.2.12
  • He arrancado gvSIG.
  • Ir al administrador de complementos filtrar por "Geoprocess" e instalar los tres paquetes de geoprocesos build 2091 (version 2.2.13).
  • He cerrado gvSIG y en la carpetate org.gvsig.geoprocess.app.algorithm/lib ya solo habian jars version 2.2.13.

He mirado en el log de gvSIG y aparecia:

INFO Instalar paquetes org.gvsig.installer.swing.impl.execution.wizard.ProgressWizard$UpdatePanel - Package installation iniitiated
INFO Instalar paquetes org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider - Installing package 'org.gvsig.geoprocess.app.algorithm' in '/home/usuario/gvSIG-desktop/gvSIG-desktop-2.1.0-2254/gvSIG/extensiones'.
INFO Instalar paquetes org.gvsig.installer.lib.impl.utils.Decompress - delete /home/usuario/gvSIG-desktop/gvSIG-desktop-2.1.0-2254/gvSIG/extensiones/org.gvsig.geoprocess.app.algorithm
INFO Instalar paquetes org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider - Installing package 'org.gvsig.geoprocess.app.mainplugin' in '/home/usuario/gvSIG-desktop/gvSIG-desktop-2.1.0-2254/gvSIG/extensiones'.
INFO Instalar paquetes org.gvsig.installer.lib.impl.utils.Decompress - delete /home/usuario/gvSIG-desktop/gvSIG-desktop-2.1.0-2254/gvSIG/extensiones/org.gvsig.geoprocess.app.mainplugin
INFO Instalar paquetes org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider - Installing package 'org.gvsig.geoprocess.app.sextante' in '/home/usuario/gvSIG-desktop/gvSIG-desktop-2.1.0-2254/gvSIG/extensiones'.
INFO Instalar paquetes org.gvsig.installer.lib.impl.utils.Decompress - delete /home/usuario/gvSIG-desktop/gvSIG-desktop-2.1.0-2254/gvSIG/extensiones/org.gvsig.geoprocess.app.sextante
INFO Instalar paquetes org.gvsig.installer.swing.impl.execution.wizard.ProgressWizard$UpdatePanel - Package installation finished

Donde indica que antes de instalar intenta borrar la carpeta del plugin.

Yo lo estaba haciendo sobre linux. Igual es algun problema en windows.

Si puedes reproducirlo y adjuntar el log tras la actualizacion de los paquetes a ver si dice algo de que no puede borrar la carpeta del plugin y nos da alguna pista.

#2 Updated by Antonio Falciano over 9 years ago

Hi Joaquín,
the issue persists. In detail, I've followed these steps:
  • I've installed a fresh gvSIG 2.1 build 2254;
  • I've closed gvSIG and restarted it again as admin;
  • I've opened the Addons manager and installed the three updates, then closed gvSIG again (see the first two log files);
  • if I try to execute gvSIG as normal user, then it's not executed at all (no gvSIG.log is generated this time);
  • if I execute it as admin, then the jars are duplicated (see the latest log file, the after install one).

#3 Updated by Joaquín del Cerro Murciano over 9 years ago

Ya creo que se que esta pasando.
Lo comento en el ticket para no tener que volvero a pensar cuando lo aborde.

Cuando se intenta instalar un paquete de un plugin y ya hay una version de este instalada, lo primero que se intenta hacer es eliminar la carpeta del plugin y luego proceder a instalar el nuevo. Si por lo que sea, falla el borrado, crea un script de ant y lo deja en la carpeta "update" de la instalacion de gvSIG para intentar instalarlo en el siguiente arranque de gvSIG, antes de que se haya ejecutado nada. Esto se hace asi por que en windows, cuando se carga un jar, se bloquea el fichero en disco y no deja eliminarlo hasta que no se cierra la aplicacion que lo ha cargado, con lo que desde el instalador de complementos no se pueden sustituir los jar de gvSIG que ya se han cargado.

El problema es que asi como en el proceso normal se elimina la carpeta del plugin antes de instalarse, el script de ant no lo hace, y eso provoca que se mezclen las dos versiones del plugin en la misma carpeta, haciendo que pueda fallar gvSIG al arrancar.

En linux, por lo menos en ubuntu, el sistema no bloquea el fichero jar al cargar clases de el, y por eso no falla.

#4 Updated by Antonio Falciano over 9 years ago

Hi Joaquín,
I've just installed gvSIG out of the "Program Files (x86)" folder and updated the three Geoprocesses addons successfully: there aren't no duplicated classes in this case. It's clear that the ant script that tries to delete the addon folder is not able to bypass the UAC, even if you run gvSIG with elevated permissions. So the only workaround to prevent this issue is to do not install gvSIG in the "Program Files (x86)" folder.

#5 Updated by Álvaro Anguix over 9 years ago

  • Related to gvSIG bugs #2961: Problema en el arranque con el último build de geoprocesos en windows added

#6 Updated by Joaquín del Cerro Murciano over 9 years ago

  • Related to deleted (gvSIG bugs #2961: Problema en el arranque con el último build de geoprocesos en windows)

#7 Updated by Joaquín del Cerro Murciano over 9 years ago

  • Duplicated by gvSIG bugs #2961: Problema en el arranque con el último build de geoprocesos en windows added

#8 Updated by Joaquín del Cerro Murciano over 9 years ago

  • Target version deleted (2.1.0-2259-rc3)

#9 Updated by Álvaro Anguix over 9 years ago

  • Category changed from Application to Add-ons

#10 Updated by Antonio Falciano about 9 years ago

Same error in gvSIG 2.1 final after the install of the update of org.gvsig.app.document.layout2.app.mainplugin from the testing repository. Deleting its folder let me to restart gvSIG. So I have to reinstall it again.
I attach the gvSIG.log file.

#11 Updated by Antonio Falciano about 9 years ago

This serious issue still persists in build 2307 when trying to update tasseledcap, roimask and principalcomponents addons on a Windows 7 machine. The old version of the plugin to update is not removed, so gvSIG is not executed at all after restart. This is the part of the gvSIG.log describing the issue:

INFO AWT-EventQueue-0 org.gvsig.installer.lib.impl.DependenciesCalculatorV2 - Packages to install:
plugin   org.gvsig.raster.principalcomponents.app.principalcomponentsclient 2.2.7-15             final all   all    j1_7  required: org.gvsig.raster.tilecache.app -ge 2.0.0-0, required: org.gvsig.raster.mainplugin -ge 2.0.0-0 required: org.gvsig.raster.tilecache.app -ge 2.0.0-0, required: org.gvsig.raster.mainplugin -ge 2.0.0-0
plugin   org.gvsig.raster.tasseledcap.app.tasseledcapclient 2.2.8-13             final all   all    j1_7  required: org.gvsig.raster.tilecache.app -ge 2.0.0-0, required: org.gvsig.raster.mainplugin -ge 2.0.0-0 required: org.gvsig.raster.tilecache.app -ge 2.0.0-0, required: org.gvsig.raster.mainplugin -ge 2.0.0-0
plugin   org.gvsig.raster.roimask.app.client      2.2.7-14             final all   all    j1_7  required: org.gvsig.raster.mainplugin -ge 2.0.0-0 required: org.gvsig.raster.mainplugin -ge 2.0.0-0

INFO AWT-EventQueue-0 org.gvsig.installer.lib.impl.DependenciesCalculatorV2 - Required packages:

INFO AWT-EventQueue-0 org.gvsig.installer.lib.impl.DependenciesCalculatorV2 - Unresolved dependencies:

INFO AWT-EventQueue-0 org.gvsig.installer.lib.impl.DependenciesCalculatorV2 - Conflict packages:

INFO AWT-EventQueue-0 org.gvsig.installer.lib.impl.DependenciesCalculatorV2 - Attempts Requireds: 1
INFO Scaricamento file org.gvsig.installer.lib.impl.utils.Download - Downloading file gvSIG-desktop-2.2.0-org.gvsig.raster.principalcomponents.app.principalcomponentsclient-2.2.7-15-final-all-all-j1_7.gvspkg from URL http://downloads.gvsig.org/download/gvsig-desktop-testing/pool/org.gvsig.raster.principalcomponents.app.principalcomponentsclient/gvSIG-desktop-2.2.0-org.gvsig.raster.principalcomponents.app.principalcomponentsclient-2.2.7-15-final-all-all-j1_7.gvspkg, with last modified date: Tue Apr 28 18:15:05 CEST 2015
INFO Scaricamento file org.gvsig.installer.lib.impl.utils.Download - Downloading file gvSIG-desktop-2.2.0-org.gvsig.raster.tasseledcap.app.tasseledcapclient-2.2.8-13-final-all-all-j1_7.gvspkg from URL http://downloads.gvsig.org/download/gvsig-desktop-testing/pool/org.gvsig.raster.tasseledcap.app.tasseledcapclient/gvSIG-desktop-2.2.0-org.gvsig.raster.tasseledcap.app.tasseledcapclient-2.2.8-13-final-all-all-j1_7.gvspkg, with last modified date: Tue Apr 28 18:15:05 CEST 2015
INFO Scaricamento file org.gvsig.installer.lib.impl.utils.Download - Downloading file gvSIG-desktop-2.2.0-org.gvsig.raster.roimask.app.client-2.2.7-14-final-all-all-j1_7.gvspkg from URL http://downloads.gvsig.org/download/gvsig-desktop-testing/pool/org.gvsig.raster.roimask.app.client/gvSIG-desktop-2.2.0-org.gvsig.raster.roimask.app.client-2.2.7-14-final-all-all-j1_7.gvspkg, with last modified date: Tue Apr 28 18:15:05 CEST 2015
INFO Installazione pacchetti org.gvsig.installer.swing.impl.execution.wizard.ProgressWizard$UpdatePanel - Package installation iniitiated
INFO Installazione pacchetti org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider - Installing package 'org.gvsig.raster.principalcomponents.app.principalcomponentsclient' in 'C:\Program Files (x86)\gvSIG desktop 2.2.0\gvSIG\extensiones'.
INFO Installazione pacchetti org.gvsig.installer.lib.impl.utils.Decompress - delete C:\Program Files (x86)\gvSIG desktop 2.2.0\gvSIG\extensiones\org.gvsig.raster.principalcomponents.app.principalcomponentsclient
WARN Installazione pacchetti org.gvsig.installer.lib.impl.utils.Decompress - Problems uncompresing plugin (last entry 'org.gvsig.raster.principalcomponents.app.principalcomponentsclient\'.
java.io.IOException: Unable to delete file: C:\Program Files (x86)\gvSIG desktop 2.2.0\gvSIG\extensiones\org.gvsig.raster.principalcomponents.app.principalcomponentsclient\lib\org.gvsig.raster.principalcomponents.toolbox.algorithm-2.2.6.jar
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2279)
    at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
    at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
    at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
    at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:348)
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:135)
    at org.gvsig.installer.lib.impl.DefaultInstallerProviderServices.decompress(DefaultInstallerProviderServices.java:63)
    at org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider.install(PluginInstallerExecutionProvider.java:103)
    at org.gvsig.installer.lib.impl.execution.DefaultInstallPackageService.installPackage(DefaultInstallPackageService.java:284)
    at org.gvsig.installer.swing.impl.execution.wizard.ProgressWizard$UpdatePanel.run(ProgressWizard.java:148)
WARN Installazione pacchetti org.gvsig.installer.lib.impl.utils.Decompress - Can't decompress plugin in 'C:\Program Files (x86)\gvSIG desktop 2.2.0\gvSIG\extensiones'.
java.io.IOException: Unable to delete file: C:\Program Files (x86)\gvSIG desktop 2.2.0\gvSIG\extensiones\org.gvsig.raster.principalcomponents.app.principalcomponentsclient\lib\org.gvsig.raster.principalcomponents.toolbox.algorithm-2.2.6.jar
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2279)
    at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
    at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
    at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
    at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:348)
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:135)
    at org.gvsig.installer.lib.impl.DefaultInstallerProviderServices.decompress(DefaultInstallerProviderServices.java:63)
    at org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider.install(PluginInstallerExecutionProvider.java:103)
    at org.gvsig.installer.lib.impl.execution.DefaultInstallPackageService.installPackage(DefaultInstallPackageService.java:284)
    at org.gvsig.installer.swing.impl.execution.wizard.ProgressWizard$UpdatePanel.run(ProgressWizard.java:148)
WARN Installazione pacchetti org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider - Can install package 'org.gvsig.raster.principalcomponents.app.principalcomponentsclient'.
org.gvsig.installer.lib.api.execution.InstallPackageServiceException: Error installing a package
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:138)
    at org.gvsig.installer.lib.impl.DefaultInstallerProviderServices.decompress(DefaultInstallerProviderServices.java:63)
    at org.gvsig.installer.prov.plugin.execution.PluginInstallerExecutionProvider.install(PluginInstallerExecutionProvider.java:103)
    at org.gvsig.installer.lib.impl.execution.DefaultInstallPackageService.installPackage(DefaultInstallPackageService.java:284)
    at org.gvsig.installer.swing.impl.execution.wizard.ProgressWizard$UpdatePanel.run(ProgressWizard.java:148)
Caused by: java.io.IOException: Unable to delete file: C:\Program Files (x86)\gvSIG desktop 2.2.0\gvSIG\extensiones\org.gvsig.raster.principalcomponents.app.principalcomponentsclient\lib\org.gvsig.raster.principalcomponents.toolbox.algorithm-2.2.6.jar
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2279)
    at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
    at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
    at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
    at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
    at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:348)
    at org.gvsig.installer.lib.impl.utils.Decompress.decompressPlugin(Decompress.java:135)
    ... 4 more

Also available in: Atom PDF