[Gvsig_desarrolladores] Construir gvSIG

Antonio Carrasco desde CIT carrasco_ant en gva.es
Mar Mayo 15 00:50:02 CEST 2007


También es posible adaptar otro comportamiento,
   con una Action implementación de ICheatSheetAction.

... e imagino que otras 3 o 4 formas, como siempre en Eclipse ...

En el ejemplo, la apertura de un Wizard de creación de elemento de proyecto
(uno de los de File >> New >> Other ...)
se adapta para lanzarlo como un paso de CheatSheet.

.... la pregunta del millón es:
¿ cuales son las Eclipse Action de lanzar un build y como se pasan los 
parametros ?



/**
 *
 */
package es.gva.cit.gvmetrica.proinso.cheatsheets;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.emf.cheatsheets.actions.AbstractOpenWizardAction;
import org.eclipse.ui.INewWizard;
import org.eclipse.ui.cheatsheets.ICheatSheetManager;
import org.eclipse.ui.cheatsheets.ICheatSheetAction;

import es.gva.cit.gvmetrica.proinso.presentation.ProinsoModelWizard;

/**
 * @author ACV
 *
 */
public class OpenPROINSOModelWizardAction extends AbstractOpenWizardAction 
implements ICheatSheetAction {

   protected String vDefaultProjectName;
   protected String vDefaultModelName;
   protected String vDefaultRootObjectClassName;


 /**
  *
  */
 public OpenPROINSOModelWizardAction() {
  // TODO Auto-generated constructor stub
 }


    public void run(String params[], ICheatSheetManager manager)
    {
        if(params.length > 0 && params[0] != null)
        {
         vDefaultProjectName = params[0];

            if(params.length > 1 && params[1] != null)
            {
             vDefaultModelName = params[1];

                if(params.length > 2 && params[2] != null)
                {
                 vDefaultRootObjectClassName = params[2];
                }
            }
        }
        run();
    }



 /* (non-Javadoc)
  * @see 
org.eclipse.emf.cheatsheets.actions.AbstractOpenWizardAction#createWizard()
  */
 protected final INewWizard createWizard() throws CoreException {
  // TODO Auto-generated method stub
  ProinsoModelWizard wizard = createProinsoModelWizard();
        if(vDefaultProjectName != null) {
            wizard.setDefaultProjectName(vDefaultProjectName);
        }
        if(vDefaultModelName != null) {
            wizard.setDefaultModelName(vDefaultModelName);
        }
        if(vDefaultRootObjectClassName != null) {
            wizard.setDefaultRootObjectClassName(vDefaultRootObjectClassName);
        }
      return wizard;
 }



   protected ProinsoModelWizard createProinsoModelWizard()
   {
       return new ProinsoModelWizard();
   }


}













----- Original Message ----- 
From: "Antonio Carrasco desde CIT" <carrasco_ant en gva.es>
To: "Lista de Desarrolladores de gvSIG" 
<gvsig_desarrolladores en runas.cap.gva.es>
Sent: Tuesday, May 15, 2007 12:39 AM
Subject: [Gvsig_desarrolladores] Construir gvSIG


> Eclipse tiene el mecanismo de "CheatSheets" (chuletas),
> que permiten al usuario lanzar una secuencia de acciones.
>
> Lo que a mí siempre me cuesta es encontrar la Action class
> y los parámetros correctos.
> Pero si alguien sabe cuales son las ACtion de lanzar builds,
> quizá podemos ensamblar un plugin eclipse
> con una CheatSheet,
> que ahorre a la gente equivocaciones en la construcción paso a paso ...?
>
>
> Mejor un XML que mil palabras ...
>
> <?xml version="1.0" encoding="UTF-8" ?>
> <cheatsheet title="Create PROINSO project and model">
>
>  <intro>
>    <description>
>      This cheat sheet is a step-by-step description of how to create a 
> Project and Model to edit an instance of PROINSO.
>    </description>
>  </intro>
>
>  <item
>   title="Create a General Project">
>   <description>
>     We need a Project to work on a new PROINSO Model. A 
> &quot;General&quot; Project will suffice. Click &quot;Play&quot; to create 
> a Project.
>   </description>
>
>     <action
>        pluginId="org.eclipse.emf.cheatsheets"
>        class="org.eclipse.emf.cheatsheets.actions.NewProjectAction"
>        param1="PROINSO test" />
>  <action
>    pluginId="org.eclipse.emf.cheatsheets"
>    class="org.eclipse.emf.cheatsheets.actions.CopyFileFromPluginAction"
>    param1="PROINSO test"
>    param2=""
>    param3="es.gva.cit.gvmetrica.proinso/transformations/listproinso.m2t" 
> />
>  <action
>    pluginId="org.eclipse.emf.cheatsheets"
>    class="org.eclipse.emf.cheatsheets.actions.CopyFileFromPluginAction"
>    param1="PROINSO test"
>    param2=""
>    param3="es.gva.cit.gvmetrica.proinso/instances/Metrica3.proinso" />
>
>  </item>
>  <item
>   title="Create a PROINSO Model">
>   <description>
>     We must create new PROINSO Model. Click &quot;Play&quot; to create a 
> PROINSO Model.
>   </description>
>
>     <action
>        pluginId="es.gva.cit.gvmetrica.proinso.cheatsheets"
> 
> class="es.gva.cit.gvmetrica.proinso.cheatsheets.OpenPROINSOModelWizardAction"
>   param1="PROINSO test"
>        param2="TestPROINSO"
>        param3="Repositorio" />
>  </item>
>
> </cheatsheet>
>
>
> ----- Original Message ----- 
> From: "Jose Manuel Vivó (Chema)" <josemanuel.vivo en iver.es>
> To: "Lista de Desarrolladores de gvSIG" 
> <gvsig_desarrolladores en runas.cap.gva.es>
> Sent: Monday, May 14, 2007 12:47 PM
> Subject: Re: [Gvsig_desarrolladores] Error al iniciar fuente gvSIG
>
>
>> Hola Jose Angel:
>>
>>  ¿Has seguido al pie de la letra las instrucciones del 'Leeme.txt'?. El
>> desarrollo con gvSIG no se basa directamente en los directorios de los
>> proyectos del workspace, de forma que, puede que te compile todo pero no
>> arranque la aplicación (le faltan dependencias).
>>
>> La modularidad del proyecto hace que, antes de arrancar requiera que 
>> lances
>> los 'build.xml' de los proyectos en un orden concreto. A esto tenemos que
>> añadir que el eclipse no se una herramienta de la que sea sencillo
>> contruir/lipiar/distribuir sus workspaces.
>>
>> Mi consejo es que vuelvas a descomprimir el '.zip' de cero y que sigas, 
>> uno a
>> uno, todos los pasos del fichero 'Leeme.txt'  del raíz del directorio
>> descomprimido. Sí aun así te sigue dando fallos, nos lo comentas y le 
>> echamos
>> un ojo.
>>
>> Un Saludo.
>> Chema.
>>
>> El Lunes 14 Mayo 2007 11:40, Jose Angel escribió:
>>> Hola a todos:
>>>
>>> Estoy intentando cargar el código fuente de gvSIG en Eclipse pero me
>>> lanza una serie de errores que no termino de resolver, son los
>>> siguientes:
>>>
>>> ERROR 1
>>>
>>> ERROR [AWT-EventQueue-1] (Launcher.java:655) - Error localizando la
>>> clase de la extensióncom.iver.cit.gvsig.ProjectExtension
>>> java.lang.NoClassDefFoundError: org/cresques/cts/ICRSFactory
>>>        at com.iver.cit.gvsig.project.Project.<clinit>(Project.java:121)
>>>        at
>>> com.iver.cit.gvsig.project.ProjectFactory.createProject(ProjectFactory.java
>>>:116) at
>>> com.iver.cit.gvsig.ProjectExtension.initialize(ProjectExtension.java:173)
>>> at com.iver.andami.Launcher.initializeExtensions(Launcher.java:638) at
>>> com.iver.andami.Launcher.access$4(Launcher.java:588)
>>>        at com.iver.andami.Launcher$4.run(Launcher.java:341)
>>>        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
>>>        at java.awt.EventQueue.dispatchEvent(Unknown Source)
>>>        at
>>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>>> at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source) 
>>> at
>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at
>>> java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>        at java.awt.EventDispatchThread.run(Unknown Source)
>>>
>>> ERROR 2
>>>
>>> ERROR [AWT-EventQueue-1] (Launcher.java:651) - No se encontró la clase
>>> de la
>>> extensióncom.iver.cit.gvsig.geoprocess.impl.RegisterGeoprocessExtension
>>> java.lang.ClassNotFoundException:
>>> com.iver.cit.gvsig.geoprocess.impl.RegisterGeoprocessExtension
>>>        at
>>> com.iver.andami.plugins.PluginClassLoader.singleLoadClass(PluginClassLoader
>>>.java:210) at
>>> com.iver.andami.plugins.PluginClassLoader.loadClass(PluginClassLoader.java:
>>>238) at java.lang.ClassLoader.loadClass(Unknown Source)
>>>        at 
>>> com.iver.andami.Launcher.initializeExtensions(Launcher.java:622)
>>>        at com.iver.andami.Launcher.access$4(Launcher.java:588)
>>>        at com.iver.andami.Launcher$4.run(Launcher.java:341)
>>>        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
>>>        at java.awt.EventQueue.dispatchEvent(Unknown Source)
>>>        at
>>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>>> at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source) 
>>> at
>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at
>>> java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>        at java.awt.EventDispatchThread.run(Unknown Source)
>>>
>>>
>>> ERROR 3
>>>
>>> DEBUG [AWT-EventQueue-1] (NotificationManager.java:99) - Error no
>>> capturado por el usuario
>>> java.lang.NullPointerException
>>>        at
>>> com.iver.gvsig.addeventtheme.AddEventThemeExtension.isVisible(AddEventTheme
>>>Extension.java:99) at
>>> com.iver.andami.plugins.ExtensionDecorator.isVisible(ExtensionDecorator.jav
>>>a:96) at
>>> com.iver.andami.ui.mdiFrame.MDIFrame.enableControls(MDIFrame.java:852) 
>>> at
>>> com.iver.andami.Launcher$5.run(Launcher.java:359)
>>>        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
>>>        at java.awt.EventQueue.dispatchEvent(Unknown Source)
>>>        at
>>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>>> at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source) 
>>> at
>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at
>>> java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>>        at java.awt.EventDispatchThread.run(Unknown Source)
>>>
>>>
>>> He de decir que tengo todo correctamente instalado, tanto los 2 JAIs
>>> como VM y están apuntando correctamente a ella. No entiendo el por qué
>>> no me encuentra las clases cuando existen realmente en sus carpetas.
>>> ¿Alguien puede indicarme este error y cómo podria resolverlo?
>>>
>>> Gracias a quien pueda ayudarme :)
>>>
>>> _______________________________________________
>>> gvSIG_desarrolladores mailing list
>>> gvSIG_desarrolladores en runas.cap.gva.es
>>> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>>
>> -- 
>> =============
>> Jose Manuel Vivó (Chema)
>> Equipo de gvSIG
>>
>> IVER T.I. S.A.
>> C/ Salamanca, 50-52
>> 46005-Valencia
>> Tlf.+34963163400
>> Spain
>> www.iver.es
>> www.gvsig.com
>>
>> _______________________________________________
>> gvSIG_desarrolladores mailing list
>> gvSIG_desarrolladores en runas.cap.gva.es
>> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>>
>>
>
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>
> 




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